读文件
对于不同文件类型的文件采用不同的读取方式,具体如下:
1.如果是原始字节流文件数据,比如媒体,图片,流媒体,动漫等,示例代码如下:
public void ReadByBufferedInputStream() throws Exception{@b@ @b@ int flg=-1;@b@ FileInputStream fis=new FileInputStream("c:/Read.jpg");@b@ BufferedInputStream bis=new BufferedInputStream(fs);@b@ while((flg==bis.read)!=-1){@b@ System.out.print((char)tmp);@b@ }@b@ @b@ bis.close();@b@ fis.close();@b@ @b@}
2.如果是纯文本字符文件数据,比如log、csv、txt等格式,示例代码如下:
public ReadByReader() throws Exception{@b@ FileReader fr=new FileReader("c:/Read2.txt");@b@ BufferedReader br=new BufferedReader(fr);@b@ String flg=null;@b@ while((flg=br.readLine())!=null){@b@ System.out.println(flg);@b@ }@b@ pw.close();@b@ br.close();@b@ fr.close();@b@}
写文件
写文件是也要根据不同文件的类型进行不同的写入方式,写入时,如写入的文件不存在,先自动创建文件,然后再写入内容,如父节点不正确,文件直接创建失败,代码如下:
1.对于媒体文件的写入,如图片、媒体等,可用如下代码进行写入:
public void WriteByPrintStream() throws Exception{@b@ @b@ FileOutputStream fos =new FileOutputStream("c:/Writer.mp3");@b@ BufferedOutputStream bos=new BufferedOutputStream(fos);@b@ bos.write( mp3内容体¥#%¥%GEREFG );@b@ bos.close();@b@ fos.close();@b@ }
2.写入纯文本字符文件,如txt、csv、log等,具体代码如下:
public void WriteByPrintWriter() throws Exception{@b@ @b@ FileWriter fw=new FileWriter("c:/Writer2.txt");@b@ BufferedWrite bw=new BufferedWrite(fw);@b@ PrintWriter pw pw=new PrintWriter(bw);@b@ pw.println("文本内容..");@b@ pw.close();@b@ bw.close();@b@ fw.close();@b@}
总结
除了文本文件外,如有doc、xls等其他文件,因为文件内容除了包含信息外,还要包含特色样式和格式信息,使用直接的字符流和字节流读取为乱码。这些格式文件,最好使用对应官方对应组件执行读写操作。