Acentos e codificação ao ler arquivos
Ao tentar enviar um arquivo binario ou com acentos para um socket o servidor perde o formato original do arquivo:
Função para ler o arquivo do asset(para do APK - android):
protected String ArquivoAsset(String f){
try {
InputStream inArq = GerenciarAssets.open(f);
long length = inArq.available();
byte[] fileData = new byte[(int) length];
DataInputStream dis = new DataInputStream(inArq);
dis.readFully(fileData);
return new String(fileData);} catch (Exception e){
System.err.println(e);
}
return null;
}
Usando o socket:
mySocket = new ServerSocket(8899);
...
headers();//headers comuns http/1.0
mySocket.write(ArquivoAsset("arquivo.txt").getBytes());
mySocket.flush();
...
As imagens não abrem corretamente e os acentos viram "?", como resolver isso?
Discussão (1)
Carregando comentários...