好的,所以我正在编写一个程序,将数据库导入文本文件Via(SaveToFile命令)。但是当我正常打开文件时它会给我。
TG! ¶’ò?²Ï# ª _þX g ÒcöëÏ°ã ª ? Á<Ž¶ëmÐö ª _þX
| ¾"µÈó\Îå ª Dw= ÿÿ† ÿÿ" I Á<Ž¶ëmÐö ª _þX 2 . " C l i e n t s " C l i e n t s + ð I D I D
ÿ Z ÿÿÿÿC ð S u r e n a m e S u r e n a m e ‚ ÿ ÿ j ÿÿC ð P a s s w o r d P a s s w o r d
ÿ z ÿÿ3 ð N a m e N a m e ‚ ÿ ÿ j ÿÿK ð
M o n e y P a i d
M o n e y P a i d ÿ z ÿÿK ð
M o n e y O w e d
M o n e y O w e d ÿ z ÿÿ[ ð O n c e O f f C l i e n t O n c e O f f C l i e n t ÿ ÿ Z ÿÿC ð P h o n e I D P h o n e I D
ÿ z ÿÿÿ a w e a w e Ó–I
这是我的代码:
procedure TfrmRawDATA.btnStoreFeedClick(Sender: TObject);
var
StoreFeed : string;
StoreFeedFile: TextFile;
data : string;
begin
begin
if (FileExists('C:\Users\ASROCK\Desktop\IT-PAT 2014\PAT Fase 3\StoreFeedFile.txt')) then
begin
DeleteFile('C:\Users\ASROCK\Desktop\IT-PAT 2014\PAT Fase 3\StoreFeedFile.txt');
ShowMessage('Save file deleted!');
end
else
AssignFile(StoreFeedFile,'Test.txt');
FileSetAttr('C:\Users\ASROCK\Desktop\IT-PAT 2014\PAT Fase 3\StoreFeedFile.txt', faReadOnly);
dmMJCPlus.tblClients.SaveToFile('C:\Users\ASROCK\Desktop\IT-PAT 2014\PAT Fase 3\StoreFeedFile.txt');
end;
end;
我只想知道如何设置文件类型或类似内容,以便它不会给我那个文本。
答案 0 :(得分:1)
ADO表/查询和ClientDataSet的默认保存格式是二进制。您可以选择使用XML。您需要在SaveToFile
:
ClientDataSet.SaveToFile('...', dfXML);
或
ADOTable.SaveToFile('...', pfXML);
文件扩展名为“.xml”应该达到相同的目的,查看源代码,虽然看起来似乎不是你的情况(因为你似乎在评论中尝试过)
pfXML
/ dfXML
分别在'adodb.pas'和'dbclient.pas'中定义。