Aller au contenu
jjacques68

Caractères spéciaux transmis par socket

Recommended Posts

Bonjour à tous, 

 

J'utilise depuis quelques jours un VD qui m'envoie des infos sur une socket vers un soft réalisé sous Windev...

 

le code dans le VD est ultra simple : 

local udpSocket = Net.FUdpSocket()
udpSocket:write("blablabla",ip,port)

 

Mais à mon grand étonnement, comme pour les requettes HTTP, tous les caractères spéciaux sont encodé en "chinois"...

 

On avait le même soucis avec le google home, on avait fait une super fonction qui convertit les caractère spéciaux comme il se devait, 

function ReplaceChar(s)
	local Char = {
    	-- 3 caractères à détecter
		{" ' ", "'"},
    	-- 2 caractères à détecter
		{"é", "é"},	{"à©", "é"},	{"è", "è"},	{"à¨","è"},		{"î", "î"},
		{"ô", "ô"},	{"û", "û"},	{"ù", "ù"},	{"ê", "ê"},	{"â","â"},
    	--1 caractère à détecter
		{"Ã", "à"},
	}
	
	for i,v in pairs(Char) do
		s = string.gsub(s, v[1], v[2])
	end
  
	return s
end

Mais là cette fonction n'est pas utilisable car on dirait que les caractères sont codés différemment...

 

exemple :
à = à
° = ÂÂ
é = é

 

Y aurait pas une solution pour ne plus avoir ce genre de soucis ???

 

c'est franchement pénible !

Partager ce message


Lien à poster
Partager sur d’autres sites

×