Método uno
/**
Lea archivos en bytes, que a menudo se usan para leer archivos binarios, como imágenes, sonidos, imágenes y otros archivos.
Por supuesto, puedes leer cuerdas.
*/
/* Parece que el entorno de red es bastante complicado, y los caracteres transmitidos cada vez son de longitud fija. ¿De este modo? */public string readString1 () {try {// fileInputStream se usa para leer transverso de bytes como datos de imagen. Para leer una secuencia de caracteres, considere usar FileReader. FileInputStream Insteam = this.openFileInput (file_name); ByteArRayOutputStream bos = new ByteArRaReOutputStream (); byte [] buffer = new Byte [1024]; int longitud = -1; while ((longitud = Intileam.read (buffer)! = -1) {bos.write (buffer, 0, longitud); // La explicación del método .write sdk es escritura bytes de conteo de byte buffer que comienza en el índice de offset a esta secuencia. // el contenido aún existe después de la transmisión está cerrada} bos.close (INSTAAM.CLOSE (); return bos.tOstRing ( / / / / / / es cerrado ¿El tamaño del búfer a la vez?Método 2
// Alguien dijo que es mejor leer cadenas de FileReader, así que use FileReader
// ¿Es un poco ineficiente leer uno a la vez? string static private readString2 () {StringBuffer str = new StringBuffer (""); Archivo archivo = nuevo archivo (file_in); intente {FileReader FR = New FileReader (archivo); int ch = 0; while ((ch = fr.read ())! =-1) {system.out.print ((char) ch+""); } fr.close (); } Catch (ioException e) {// tODO Auto Generated BLOCK E.PrintStackTRace (); System.out.println ("Error del lector de archivos"); } return str.ToString ();}Método tres
/Leer cadena por byte/
/* Personalmente, siento que la mejor manera es leer bytes (leer al mismo tiempo) y leer bytes. ¿No es mejor leer bytes después de leer y transcodear una vez*/
cadena estática privada readstring3 ()
{
String str = ""; file file = new File (file_in); try {fileInputStream in = new FileInputStream (archivo); // El tamaño es la longitud de la cadena, read int size = in.available (); byte [] buffer = new Byte [size]; in.read (búfer); cercar(); str = new String (buffer, "GB2312");} Catch (ioException e) {// tODO Auto Generado Bloque de retorno NULL; E.PrintStackTrace ();} return str;}
Método 4
/InputStreamReader+BufferedReader lee cadenas, la clase InputStreamReader es un puente desde la transmisión de bytes hasta la transmisión de caracteres/
/* Leer por línea es una buena manera de leer los datos formateados que se procesarán*/String static private readString4 () {int len = 0; StringBuffer str = new StringBuffer (""); Archivo archivo = nuevo archivo (file_in); intente {fileInputStream is = new FileInputStream (archivo); InputStreamReader isr = new InputStreamReader (is); BufferedReader in = new BufferedReader (ISR); Línea de cadena = nulo; while ((line = in.readline ())! = null) {if (len! = 0) // manejar el problema de la línea {str.append ("/r/n"+line); } else {str.append (línea); } len ++; } in.close (); is.close (); } Catch (ioException e) {// tODO Auto Generated BLOCK E.PrintStackTRace (); } return str.ToString ();}El camino debe tomarse paso a paso. Recuerde el camino que ha caminado y nunca vuelva a cometer los mismos errores. ¡Este es un verdadero crecimiento! Bienvenido a dar consejos e intercambios.
El método anterior para leer archivos en cadenas en Java es todo el contenido que comparto con usted. Espero que pueda darle una referencia y espero que pueda apoyar más a Wulin.com.