uses
SysUtils, Classes, {SAX, SAXHelpers, SAXComps, SAXKW,}
- GikoSystem, XMLIntf, XMLDoc{, HttpApp};
+ GikoSystem, {XMLIntf, XMLDoc}{, HttpApp} GikoXMLDoc, YofUtils;
type
TAddressHistoryDM = class(TDataModule)
- procedure DataModuleCreate(Sender: TObject);
private
{ Private \90é\8c¾ }
FReadCount: Integer;
{$R *.dfm}
-procedure TAddressHistoryDM.DataModuleCreate(Sender: TObject);
-begin
-//
-end;
-
procedure TAddressHistoryDM.ReadHistory(sl: TStrings; ReadCount: Integer);
var
FileName: string;
i: Integer;
s: string;
begin
+
sl.Clear;
FReadCount := ReadCount;
FileName := GikoSys.GetConfigDir + ADDRESS_HISTORY_FILE_NAME;
if FileExists(FileName) then begin
- XMLDoc := LoadXMLDocument(FileName);
- XMLNode := XMLDoc.DocumentElement;
-
- if XMLNode.NodeName = 'address' then begin
- for i := 0 to XMLNode.ChildNodes.Count - 1 do begin
- HistoryNode := XMLNode.ChildNodes[i];
- if HistoryNode.NodeName = 'history' then begin
- if FReadCount >= sl.Count then begin
- s := Trim(HistoryNode.Attributes['url']);
- if s <> '' then
- sl.Add(s);
- //sl.Add(HttpDecode(s));
- end;
- end;
- end;
+ try
+ XMLDoc := IXMLDocument.Create;
+ //XMLDoc := LoadXMLDocument(FileName);
+ LoadXMLDocument(FileName, XMLDoc);
+ try
+ XMLNode := XMLDoc.DocumentElement;
+
+ if XMLNode.NodeName = 'address' then begin
+ for i := 0 to XMLNode.ChildNodes.Count - 1 do begin
+ HistoryNode := XMLNode.ChildNodes[i];
+ if HistoryNode.NodeName = 'history' then begin
+ if FReadCount >= sl.Count then begin
+ s := Trim(HistoryNode.Attributes['url']);
+ if s <> '' then
+ sl.Add(s);
+ //sl.Add(HttpDecode(s));
+ end;
+ end;
+ end;
+ end;
+ finally
+ XMLDoc.Free;
+ end;
+ except
end;
end;
procedure TAddressHistoryDM.WriteHistory(sl: TStrings; WriteCount: Integer);
var
FileName: string;
-// SaveList: TStringList;
+ SaveList: TStringList;
i: Integer;
Count: Integer;
-
+{
XMLDoc: IXMLDocument;
XMLNode: IXMLNode;
HistoryNode: IXMLNode;
+}
begin
- XMLDoc := NewXMLDocument;
+{
+ XMLDoc := NewXMLDocument;
XMLDoc.Encoding := 'Shift_JIS';
XMLDoc.StandAlone := 'yes';
XMLNode := XMLDoc.AddChild('address');
HistoryNode.Attributes['url'] := Trim(sl[i]);
end;
XMLDoc.SaveToFile(FileName);
-
-{ FileName := GikoSys.GetConfigDir + ADDRESS_HISTORY_FILE_NAME;
+}
+ FileName := GikoSys.GetConfigDir + ADDRESS_HISTORY_FILE_NAME;
SaveList := TStringList.Create;
try
if sl.Count > WriteCount then
SaveList.Add('<?xml version="1.0" encoding="Shift_JIS" standalone="yes"?>');
SaveList.Add('<address>');
for i := 0 to Count - 1 do begin
- SaveList.Add('<history url="' + HttpEncode(Trim(sl[i])) + '"/>');
+ SaveList.Add('<history url="' + HtmlEncode(Trim(sl[i])) + '"/>');
end;
SaveList.Add('</address>');
SaveList.SaveToFile(FileName);
finally
SaveList.Free;
- end;}
+ end;
end;
{procedure TAddressHistoryDM.SAXStartDocument(Sender: TObject);