안녕들 하십니까 .
스트링의 맨 앞에 한자만 따와서 캐릭터로 바꾼후 'A'..'Z' 사이의 값인지 검사 하기 위한 것인데요,
스트링 한글자 캐릭터로 바꾸는 것이 잘 안되는 군요.
제 나름데로 이렇게 저렇게 해 봤는데 안됩니다.
도와 주십시오.
procedure TForm1.N_ListOpClClick(Sender: TObject);
Var
stQy1, st1 : String ;
Char1 : Char;
begin
....중략 ....
stQy1 := Trim(Qy1.Fields[0].AsString) ;
st1 := Copy(stQy1,1,1);
//Char1 := Copy(stQy1,1,1); //여기서 스트링, 캐릭터 안맞음 형변환 필요(?)
//if Char1 in ['A'..'Z'] then
if (st1 <> '') And (st1 <> '0') then //결국 안되서 이렇게 응급처치
ListSrc.Items.Add(stQy1) ;
Qy1.Next ;
... 중략...
end;
이것은 디비에 공백, 숫자, 이상한문자로 시작하는놈 빼고 결국 'A'~'Z'로 시작하는 정상적인 문자를 리스트박스에 집어넣으려고 하는 것입니다.
아래처럼 Char1변수값에 직접 인덱스를 이용해서 읽으세요...
procedure TForm1.N_ListOpClClick(Sender: TObject);
Var
stQy1 : String ;
Char1 : Char;
begin
....중략 ....
stQy1 := Trim(Qy1.Fields[0].AsString);
Char1 := stQy[1];
if Char1 in ['A'..'Z'] then
ListSrc.Items.Add(stQy1) ;
Qy1.Next ;
... 중략...
end;
김석수 wrote:
> 안녕들 하십니까 .
> 스트링의 맨 앞에 한자만 따와서 캐릭터로 바꾼후 'A'..'Z' 사이의 값인지 검사 하기 위한 것인데요,
> 스트링 한글자 캐릭터로 바꾸는 것이 잘 안되는 군요.
> 제 나름데로 이렇게 저렇게 해 봤는데 안됩니다.
> 도와 주십시오.
>
> procedure TForm1.N_ListOpClClick(Sender: TObject);
> Var
> stQy1, st1 : String ;
> Char1 : Char;
> begin
> ....중략 ....
>
> stQy1 := Trim(Qy1.Fields[0].AsString) ;
> st1 := Copy(stQy1,1,1);
> //Char1 := Copy(stQy1,1,1); //여기서 스트링, 캐릭터 안맞음 형변환 필요(?)
> //if Char1 in ['A'..'Z'] then
> if (st1 <> '') And (st1 <> '0') then //결국 안되서 이렇게 응급처치
> ListSrc.Items.Add(stQy1) ;
> Qy1.Next ;
> ... 중략...
> end;
>
> 이것은 디비에 공백, 숫자, 이상한문자로 시작하는놈 빼고 결국 'A'~'Z'로 시작하는 정상적인 문자를 리스트박스에 집어넣으려고 하는 것입니다.