Konuyu Oyla:
  • Derecelendirme: 4.5/5 - 2 oy
  • 1
  • 2
  • 3
  • 4
  • 5
xmldocument veri okuma
#11
(12-04-2018, Saat: 17:08)SimaWB Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.
(12-04-2018, Saat: 15:31)barisatalay Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.Merhabalar,

XE7 den sonra delphi mobile kullanmadım fakat ozamanlardan aklımda kalan; windows platformu hariç TXMLDocument componentinin diğer platformlara desteğinin olmaması.

Aslında yukarıda yazdım, Object Inspector'dan DOMVendor özelliği değiştirilerek kullanılabiliyormuş. Fakat bu sefer de ramazanayer'ın yazdığı gibi "loadfromurl not enable for non-windows platforms currently" imiş.
Aslında hata mesajı çok açık. O yüzden önce dosyayı lokale indirmek gerektiğini yazdım ama nedense ramazanayer bu mesajımı dikkate almadı sanırım Smile

TIdHttp kullanarak dosyayı istediğiniz bir yere indirebileceğiniz gibi bir Stream içine de atabilirsiniz.  
Ondan sonra XML işlemlerine kaldığınız yerden devam etmelisiniz.

Deneme yapmadan şöyle bir kod paylaşmak istiyorum; belki yol gösterir:
var
 ms: TMemoryStream;
 Http: TIdHttp;
 Url: string;
begin
 Url := 'http://ajansmanisa.com/cache/manset.xml';
 ms := TMemoryStream.Create;
 Http := := TIdHttp.Create(Nil);
 try
   Http.Request.Accept := 'text/xml, text/html, application/octet-stream'; 
   Http.Request.ContentType := 'text/xml';
   Http.Request.URL := Url;  
   Http.Request.Connection :=  Url;
   Http.Get(Url, ms);

   XML.LoadFromStream(ms);
 finally
   Http.Free;
   ms.Free;
 end;
end;

Hocam gözümden kaçmış özür Smile Smile
Cevapla
#12
Arkadaşlar çözüme yardımlarınızla ulaştım
teşekkürler Heart

portala not olması için kodu atayım dedim

forma 1 xmldocument ekliyip DOMVentor u  'ADOM XML v4' olarak ayarlıyoruz

buton click yordamına da aşağıdakileri ekliyoruz


procedure TForm1.Button2Click(Sender: TObject);
var
NetHTTPClient1:TNetHTTPClient;
NetHTTPRequest1:TNetHTTPRequest;
ms: TMemoryStream;
 XMLNode: IXMLNode;

 yol,DosyaYolu: String;
bol: Boolean;

begin
NetHTTPClient1:=TNetHTTPClient.Create(nil);
NetHTTPRequest1:=TNetHTTPRequest.Create(nil);

 NetHTTPClient1.Accept:='text/xml, text/html, application/octet-stream';
 NetHTTPClient1.ContentType:='text/xml';
 NetHTTPRequest1.Accept:='text/xml, text/html, application/octet-stream';
 NetHTTPRequest1.Client:=NetHTTPClient1;
 NetHTTPRequest1.MethodString:='GET';
 NetHTTPRequest1.URL:= 'http://ajansmanisa.com/cache/manset.xml';

ms := TMemoryStream.Create;
try
  NetHTTPRequest1.Get(NetHTTPRequest1.URL, ms);

   yol := System.IOUtils.TPath.GetHomePath() + PathDelim + 'Veriler';
   bol := System.SysUtils.ForceDirectories(yol);
  if bol then
  begin
    DosyaYolu:=yol+ '/manset.xml';
      ms.SaveToFile(DosyaYolu);
  end;


  try
     XMLDocument1.Active := false;
     XMLDocument1.FileName := DosyaYolu;
     XMLDocument1.Active := true;


   XMLNode := XMLDocument1.DocumentElement.ChildNodes.FindNode('linkx');
   repeat
     Memo1.Lines.Add('Adı : '+XMLNode.ChildNodes['adi'].Text);
     Memo1.Lines.Add('İd : '+XMLNode.ChildNodes['ids'].Text);
     Memo1.Lines.Add('Resim : '+XMLNode.ChildNodes['res'].Text);
     Memo1.Lines.Add('');
     XMLNode := XMLNode.NextSibling;
   until XMLNode = nil;
 finally
    XMLDocument1.Active := false;
 end;

finally
  ms.Free;
  NetHTTPRequest1.Free;
  NetHTTPClient1.Free;
end;

end;
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Firemonkey Android Uygulama ile Barcode Okuma coderlegobilisim 0 23 1 saat önce
Son Yorum: coderlegobilisim
Lightbulb QR okuma ve oluşturma [Anlatım] Mr.Developer 11 945 25-07-2019, Saat: 11:44
Son Yorum: seydigozegir@gmail.com
  Android string grid check column a veri ekleme 41linea41 3 410 19-04-2019, Saat: 20:06
Son Yorum: 41linea41
  IOS Barkod okuma mcuyan 0 265 02-02-2019, Saat: 21:07
Son Yorum: mcuyan
  DX 10.3 için comport libry bileşeni ekleyip androidde seri porta bilgi gönderme/okuma baloglurecep 2 458 25-01-2019, Saat: 17:45
Son Yorum: baloglurecep



Konuyu Okuyanlar: 1 Ziyaretçi