如何在Java项目中利用字符流实现一个io编程?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
案例1:
读取一个文件并写入到另一个文件中,char[] 来中转。
首先要在E盘下创建一个文本文档,命名为test.txt,输入一些字符串。
public class Demo_5 { public static void main(String[] args) { FileReader fr=null; //文件取出字符流对象(输入流) FileWriter fw=null; //写入到文件(输出流) try { fr=new FileReader("e:\\test.txt"); //创建一个fr对象 fw=new FileWriter("d:\\test.txt"); //创建输出对象 char []c=new char[1024]; //读入到内存 int n=0; //记录实际读取到的字符数 while((n=fr.read(c))!=-1){ //String s=new String(c,0,n); fw.write(c,0,n); } } catch (Exception e) { e.printStackTrace(); }finally{ try { fr.close(); fw.close(); } catch (Exception e) { e.printStackTrace(); } } } }
打开D盘的test.txt文件,出现相同的字符串。
案例2:为了提高效率引入了缓冲字符流
依然实现读取一个文件并写入到另一个文件中,直接操作String。
public class Demo_6 { public static void main(String[] args) { BufferedReader br=null; BufferedWriter bw=null; try{ FileReader fr=new FileReader("e:\\test.txt"); //先创建FileReader对象 br=new BufferedReader(fr); FileWriter fw=new FileWriter("d:\\test1.txt"); //创建FileWriter对象 bw=new BufferedWriter(fw); String s=""; while((s=br.readLine())!=null){ //循环读取文件,s不为空即还未读完毕 bw.write(s+"\r\n"); //输出到磁盘,加上“\r\n”为了实现换行 } }catch(Exception e){ e.printStackTrace(); }finally{ try { br.close(); bw.close(); } catch (Exception e) { e.printStackTrace(); } } } }
打开D盘的test1.txt文件,出现相同的字符串。
总结:字节流操作对象byte,字符流操作对象char,缓冲字符流操作对象String。
看完上述内容,你们掌握如何在Java项目中利用字符流实现一个io编程的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。