j'ai fait ce code pour traduire des pages XML ou des flux RSS,
J'ai mis comme exemple 2 adresses contenant les mots à remplacer.
Lorsque je demande l'affichage de la page, tout apparaît en chinois (enfin en asiatique !)
Hallucinant !
Voilà mon code
Code : Tout sélectionner
Enumeration
#WIN
#BT1
#BT2
#AFFICHE
EndEnumeration
Procedure OpenWindow_WIN()
If OpenWindow(#WIN, 1, 303, 830, 800, "TEST", #PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_TitleBar|#PB_Window_ScreenCentered)
If CreateGadgetList(WindowID(#WIN))
EditorGadget(#AFFICHE, 2, 115, 825, 665, #PB_Editor_ReadOnly)
SetGadgetText(#AFFICHE,"Editor vide")
SendMessage_(GadgetID(#AFFICHE), #EM_SETTARGETDEVICE, #Null, 0)
ButtonGadget(#BT1, 2, 2, 150, 20, "Source Page 1", #BS_FLAT)
ButtonGadget(#BT2, 155, 2, 150, 20, "Source Page 2", #BS_FLAT)
PureCOLOR_SetWindowColor(#WIN, $757575)
EndIf
EndIf
EndProcedure
ProcedureDLL.s Url2Text2(Url.s, OpenType.b,ProxyAndPort.s)
;/ Author : Pille
isLoop.b=1
INET_RELOAD.l = $80000000
hInet.l=0
hURL.l=0
Bytes.l=0
Buffer.s= Space (2048 )
RES.s= ""
hInet = InternetOpen_ ( "" , OpenType, ProxyAndPort, "" , 0)
hURL = InternetOpenUrl_ (hInet, Url, #Null , 0, INET_RELOAD, 0)
Repeat
InternetReadFile_ (hURL,@Buffer, Len (Buffer), @Bytes)
If Bytes = 0
isLoop=0
Else
RES = RES + Left (Buffer, Bytes)
EndIf
Until isLoop=0
InternetCloseHandle_ (hURL)
InternetCloseHandle_ (hInet)
ProcedureReturn RES
EndProcedure
ProcedureDLL.s Url2Text(Url.s)
ProcedureReturn Url2Text2(Url,1, "" )
EndProcedure
Procedure NewZ(Url$)
Source$=Url2Text(Url$)
; ;conversion des jours anglais
Source$=ReplaceString(Source$,"Mon,","Lundi ")
Source$=ReplaceString(Source$,"Tue,","Mardi ")
Source$=ReplaceString(Source$,"Wed,","Mercredi ")
Source$=ReplaceString(Source$,"Thu,","Jeudi ")
Source$=ReplaceString(Source$,"Fri,","Vendredi ")
Source$=ReplaceString(Source$,"Sat,","Samedi ")
Source$=ReplaceString(Source$,"Sun,","Dimanche ")
SetGadgetText(#AFFICHE,"La source avec la conversion :"+Chr(10)+Source$)
EndProcedure
OpenWindow_WIN()
Repeat
Event = WaitWindowEvent()
Select Event
Case #PB_Event_Gadget
EventGadget = EventGadget()
EventType = EventType()
If EventGadget = #AFFICHE
ElseIf EventGadget = #BT1
Url$="http://www.vipan.com/"
NewZ(Url$)
ElseIf EventGadget = #BT2
Url$="http://arsworld.free.fr"
NewZ(Url$)
EndIf
Case #PB_Event_CloseWindow
EventWindow = EventWindow()
If EventWindow = #WIN
CloseWindow(#WIN)
Break
EndIf
EndSelect
ForEver
;