介绍
这篇文章给大家介绍使用Java怎么将读取的文件转换为字符串,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
<强>方式一强>
/* *
以字节为单位读取文件,常用于读二进制文件,如图片,声音、影像等文件。
当然也是可以读字符串的。
*/
/*,貌似是说网络环境中比较复杂,每次传过来的字符是定长的,用这种方式? */public String  readString1 () { ,试一试 ,{//FileInputStream 才能用于读取诸如图像数据之类的原始字节流。要读取字符流,请考虑使用,FileReader又是; FileInputStream 才能;生态基=this.openFileInput (FILE_NAME); ByteArrayOutputStream 才能;bos =, new ByteArrayOutputStream (); ,,byte[],缓冲=new 字节[1024]; int 才能;长度=1; ,,,((=length inStream.read(缓冲),!=,1) {才能 ,,bos.write(缓冲区,0,长度); ,,//,.write方法,SDK 的解释是,Writes count bytes 得到,byte array buffer starting at offset index 用却;能够流。 ,,//,当流关闭以后内容依然存在 ,,} bos.close才能(); inStream.close才能(); return 才能;bos.toString (),,//才能,为什么不一次性把缓冲得大小取出来呢?为什么还要写入到bos中呢?,return 新(缓冲区,“UTF-8"),不更好么?//才能,return new 字符串(bos.toByteArray (),“UTF-8");,, ,} }
<>强方式二强>
//有人说了FileReader读字符串更好,那么就用FileReader吧
//,每次读一个是不是效率有点低了? private static  String readString2 () { ,StringBuffer str=new StringBuffer (“;”); ,File 文件=new 文件(FILE_IN); ,try { FileReader 才能fr=new FileReader(文件); int 才能;ch =, 0; 而才能((=ch fr.read ()) !=1,) {才能 ,,System.out.print ((char) ch +“,“),, ,,} fr.close才能(); ,}catch (IOException e), {//才能,TODO Auto-generated catch 块 e.printStackTrace才能(); System.out.println才能(“File 读者出错“); ,} ,return str.toString (); }
<>强方式三强>
/按字节读取字符串/
/*个人感觉最好的方式,(一次读完)读字节就读字节吧,读完转码一次不就好了*/
私有静态字符串readString3 ()
{
String str=?”; File 文件=new 文件(FILE_IN); try { ,FileInputStream 在=new FileInputStream(文件); ,//size 为字串的长度,,这里一次性读完 ,int 大?in.available (); ,byte[],缓冲=new 字节(大小); ,in.read(缓冲); ,in.close (); ,str=new 字符串(缓冲区,“GB2312"); },catch (IOException e), { ,//TODO Auto-generated  catch 块 ,return 零; ,e.printStackTrace (); } return str;
}
<强>方式四强>
/InputStreamReader + BufferedReader读取字符串,InputStreamReader类是从字节流到字符流的桥梁/
/*,按行读对于要处理的格式化数据是一种读取的好方式,*/private static  String readString4 () { ,int len=0; ,StringBuffer str=new StringBuffer (“;”); ,File 文件=new 文件(FILE_IN); ,try { FileInputStream 才能;=new FileInputStream(文件); InputStreamReader 才能;isr=, new InputStreamReader(是); BufferedReader 才能,=,new BufferedReader (isr); String 才能行=零; 而才能(,(=in.readLine行())!=null ) {才能 ,,如果(len !=, 0),//,处理换行符的问题 ,,{ ,,,str.append (“\ r \ n" +线); ,,} 其他的,, ,,{ ,,,str.append(线); ,,} ,,len + +; ,,} in.close才能(); is.close才能(); ,}catch (IOException e), {//才能,TODO Auto-generated catch 块 e.printStackTrace才能(); ,} ,return str.toString (); }
关于使用Java怎么将读取的文件转换为字符串就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。