Java核心API之缓冲字符流的使用介绍

 时间:2024-10-12 21:42:37

1、缓冲字符输出流PrintWriter PrintWriter具有自动行刷新的缓冲字符输出流,其内部提供了缓冲区,可以退提高写出效率,其具有丰富的构造方法。常用方法有: PrintWriter(File file); PrintWriter(OutputStream out); PrintWriter(OutputStream out,boolean antuflush); PrintWriter(Writer writer); PrintWriter(Writer writer,boolean antuoflush); PrintWriter(String fileName); 那么什么是自动行刷新呢?其实是指PrintWriter可以按行写字符串的意思。示例代码片段如下: /* * PrintWriter(File file); * 该构造方法传入文件对象 * * PrintWriter(OutputStream out); * 该构造方法出入字节流 * * PrintWriter(OutputStream out,boolean antuflush); * 该构造方法第一个参数是字节流,第二个参数是自动行刷新标识 * * PrintWriter(Writer writer); * 该构造方法传入字符流 * * PrintWriter(Writer writer,boolean antuoflush); * 该构造方法第一参数传入字符流,第二个参数传入自动行刷新标识 * * PrintWriter(String fileName); * 该构造方法传入文件名称字符串 */ @Test public void testPW() throws Exception{ //PrintWriter(File file) File file = new File("pw.txt"); PrintWriter pw = new PrintWriter(file); //PrintWriter(OutputStream out,boolean antuflush) FileOutputStream fos = new FileOutputStream(file); PrintWriter pw2 = new PrintWriter(fos); PrintWriter pw3 = new PrintWriter(fos,true); //PrintWriter(Writer writer,boolean antuoflush) OutputStreamWriter osw = new OutputStreamWriter(fos); PrintWriter pw4 = new PrintWriter(osw); PrintWriter pw5 = new PrintWriter(osw,true); //PrintWriter(String fileName) PrintWriter pw6 = new PrintWriter("pw.txt"); }分析:众多构造方法中最常用的方式是PrintWriter(Writer writer,boolean antuoflush)第一个参数是字符流的父类,第二个参数就是自动行刷新标识了。

Java核心API之缓冲字符流的使用介绍

2、缓冲字符流print方法 PrintWriter具有丰富的pint方法,而println方法输出字符串后会自动的flush,即清空缓冲区,将数据强制写出。常用方法有: void print(int i); void print(char c); void print(boolean b); void print(char[] c); void print(double d); void print(float f); void print(long l); void print(String str);分析:PrintWriter的print方法能够写出所有基本数据。

3、运用PrintWriter向文件中写出数据示例代码如下: @Test public void testPWIO() throws Exception{ FileOutputStream fos = new FileOutputStream("pw.txt"); OutputStreamWriter osw = new OutputStreamWriter(fos,"UTF-8"); PrintWriter pw = new PrintWriter(osw,true); pw.println("HelloWorld"); pw.close(); }

Java核心API之缓冲字符流的使用介绍

4、缓冲字符输入流BufferedReader BufferedReader是缓冲字符输入流,其内部维护一个缓冲区,可以提高读取效率。构造方法如下: BufferedReader(Reader reader)示例代码如下: /* *构造方法 BufferedReader(Reader reader) */ @Test public void testBRContructor() throws Exception{ FileInputStream fis = new FileInputStream("pw.txt"); InputStreamReader isr = new InputStreamReader(fis,"UTF-8"); //构造方法 BufferedReader(Reader reader) BufferedReader br = new BufferedReader(isr);}

Java核心API之缓冲字符流的使用介绍

5、使用BufferedReader的核心方法读取文件 BufferedReader提供了一个便于读金泫险缋取一行字符串的菱诎逭幂方法:String readerLine()该方法可以连续读取一行字符串,直到读取到换行符为止,返回的字符串不包含该换行符。示例代码片段如下: /* * String readLine() * 该方法可以连续读取一行字符串,直到读取到换行符为止,返回的字符串不包含该换行符。 */ @Test public void testBRReadLine() throws Exception{ FileInputStream fis = new FileInputStream("pw.txt"); InputStreamReader isr = new InputStreamReader(fis,"UTF-8"); BufferedReader br = new BufferedReader(isr); String end = null; while((end=br.readLine())!=null){ System.out.println(end); } }

Java核心API之缓冲字符流的使用介绍

6、使用缓冲字符流复制文件Demo示例代码如下: /* * 使用缓冲字符流赋值文件 */ @哌囿亡噱Test public void copy(){ //读取文件 僻棍募暖FileInputStream fis = null; InputStreamReader isr = null; BufferedReader br = null; //复制文件 FileOutputStream fos = null; OutputStreamWriter osw = null; PrintWriter pw = null; try { fis = new FileInputStream("speech.txt"); isr = new InputStreamReader(fis,"UTF-8"); br = new BufferedReader(isr); fos = new FileOutputStream("speech_copy.txt"); osw = new OutputStreamWriter(fos,"UTF-8"); pw = new PrintWriter(osw); String end = null; while((end = br.readLine())!=null){ pw.println(end); } } catch (FileNotFoundException e) { System.out.println("文件没有找到"); } catch (UnsupportedEncodingException e){ System.out.println("不支持指定字符集"); } catch (IOException e){ System.out.println("读写文件出现问题"); } finally { if(br != null){ try { br.close(); } catch (IOException e) { e.printStackTrace(); } } if(pw != null){ pw.close(); } }注意:大家可以把小编的代码拷贝下来进行测试,测试前需要创建要拷贝的文件,如示例中speech.txt

Java核心API之缓冲字符流的使用介绍
  • Java核心API之字符流使用介绍
  • Java核心API之对象流的使用介绍
  • java 字节流和字符流 (下):它们之间的转换
  • Java核心API之File使用技巧
  • Java高级[8]:字节流与字符流的转换
  • 热门搜索
    70周年纪念日手抄报 家乡手抄报 关于读书手抄报资料 关于语文的手抄报图片 圣诞节手抄报图片 母爱的手抄报 爱护地球手抄报 孝德手抄报内容 关于三字经的手抄报 汉字手抄报五年级