現在、DBGridからCSVへのエクスポート処理を行っています。
CSVとして開くのは問題ないのですが、メモ帳で開くと…文字のデータが
数値として認識されております。これはDBGrid設定の問題なのですか?
例)1,"東京","新宿"
↓
1,東京,新宿のような結果になってしまいます。
どうか、ご伝授お願いします。
Delphi5 Access97
procedure TForm1.Button1Click(Sender: TObject);
var
F: TextFile;
CSVFile: String;
stl: TStringList;
i: Integer;
begin
IF SaveDialog1.Execute Then
begin
CSVFile := SaveDialog1.FileName;
end
else
begin
Exit;
end;
stl := TStringList.Create;
try
AssignFile(F,CSVFile);
ReWrite(F);
begin
for i := 0 to DBGrid1.DataSource.DataSet.FieldCount - 1 do
begin
stl.Add(DBGrid1.DataSource.DataSet.Fields[i].AsString);
end;
Writeln(F,stl.CommaText);
stl.Clear;
DataSource1.DataSet.Next;
end;
CloseFile(F);
finally
stl.Free;
end;
end;
CSVは、カンマ区切りで合ってますよ。
ダブルコートで括られるのは、" "や、","や、改行を含む場合です。
1,a,2,b,3,c
とあっても、数値だとか文字列だとかでなく、値が6個並んでいるだけです。
値の型は、CSVの情報からは取得できません。
にしのさん、アドバイスありがとうございました。
今後ともよろしくお願いします。
ツイート | ![]() |