Encoding string utf8
Publicado por Oscar (5 intervenciones) el 14/08/2020 15:00:38
Hola. Necesitaria ayuda con lo siguiente . Necesito leer un fichero pdf y despues de realizar la lectura de los bytes y almacenarlo en un array de bytes, almacenarlo en una string con Encoding UTF8. El probñema es que o se porque razón, el resultado de almacenarlo en el String se trunca en una parte de la cadena del resultado y no escribe mas en la variable String utf8 y no se el motivo de porque ocurre esto.
Os pongo como lo he implementado:
He probado a leer el fichero pdf y almacenarlo en un txt la codificación, y en el fichero.txt si lo escribe correctamente todo el contenido.
Por lo que no entiendo el porque en la variable String haciendo un Encoding a UTF8 , no lo guarda todo el contenido. Entiendo que puede ser algún caracter que no lo interpreta o no lo se.
Me gustaria si alguien pudiera ayudarme se lo agradecería.
Un saludo.
Os pongo como lo he implementado:
1
2
3
String filetoexport = "C:\\file.pdf";
byte[] bytes = System.IO.File.ReadAllBytes(filetoexport);
String utf8 = Encoding.UTF8.GetString(bytes);
He probado a leer el fichero pdf y almacenarlo en un txt la codificación, y en el fichero.txt si lo escribe correctamente todo el contenido.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
using (StreamReader sr = new StreamReader(@"C:\\file.pdf"))
{
var stream = new MemoryStream();
using (StreamWriter sw = new StreamWriter((@"C:\\output.txt")))
{
while (!sr.EndOfStream)
{
string line = sr.ReadLine();
sw.WriteLine(line);
sw.Flush();
}
String s = sw.ToString();
}
}
Por lo que no entiendo el porque en la variable String haciendo un Encoding a UTF8 , no lo guarda todo el contenido. Entiendo que puede ser algún caracter que no lo interpreta o no lo se.
Me gustaria si alguien pudiera ayudarme se lo agradecería.
Un saludo.
Valora esta pregunta


0