国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Java IO學習筆記六

syoya / 2258人閱讀

摘要:實例文件中的結果如下陳加兵姓名陳加兵年齡成績姓名陳加兵年齡成績文件創建成功陳加兵姓名年齡成績姓名年齡成績繼承,主要針對的是字符流的操作向文本輸出流打印對象的格式化表示形式。構造函數使用指定文件創建不具有自動行刷新的新。

打印流

在整個IO包中,打印流是輸出信息最方便的類,主要包含字節打印流PrintStream)和字符打印流PrintWrite)。打印流提供了非常方便的打印功能,可以打印任何的數據類型,例如:小數、整數、字符串等等,相對于前面學習的幾個文件的操作來說,這里的打印流是最簡便的一個類了

PrintStream

主要功能是格式化的將內容寫入文件,并不是打印在控制臺上

PrintStream最大的好處就是可以格式化的輸出,相信學過c的朋友都知道prinf這格式化輸出函數,這里的PrintStream實現了更加簡單的格式化輸出,不需要使用什么%d,%f了,只需要都是用%s即可,這個很像python

PrintStream 打印的所有字符都使用平臺的默認字符編碼轉換為字節。在需要寫入字符而不是寫入字節的情況下,應該使用 PrintWriter 類。

構造函數

PrintStream(File file) 創建具有指定文件且不帶自動行刷新的新打印流。

PrintStream(OutputStream out) 創建新的打印流。

PrintStream(OutputStream out, boolean autoFlush) 創建新的打印流,并且設置自動刷新

PrintStream(String fileName) 創建具有指定文件名稱且不帶自動行刷新的新打印流。

File file_2=new File("/tmp"+File.separator+"test"+File.separator+"test.txt");
PrintStream printStream=new PrintStream(file_2);  //直接使用File
PrintStream printStream=new PrintStream(new FileOutputStream(file_2));  //使用OutputStream的子類FileOutputStream
常用的函數

PrintStream append(char c) 在此輸入流的后面追加字符。

PrintStream append(CharSequence csq) 將指定字符序列添加到此輸出流。

PrintStream append(CharSequence csq, int start, int end) 將指定字符序列的子序列添加到此輸出流。

print() 打印常用的數據類型,比如String,char,int ,double,float,boolean,long,short

println() 打印常用的數據類型,但是帶有換行符

printf(String format, Object... args) 使用指定格式字符串和參數將格式化的字符串寫入此輸出流的便捷方法。

format(String format, Object... args) 使用指定格式字符串和參數將格式化字符串寫入此輸出流中。

close()

flush()

實例
 package IO;


import java.io.*;

/**
 * Created by chenjiabing on 17-5-25.
 */
 
 
/**test.txt文件中的結果如下:
 陳加兵
 2299.9
 姓名:陳加兵,n年齡:22,成績:99.9
 姓名:陳加兵,n年齡:22,成績:99.9
 c
 chenjiabi
 */

public class demo9 {
    public static void main(String[] args) {
        PrintStream printStream = null;
        File file_1 = new File("/tmp" + File.separator + "test");
        File file_2 = new File("/tmp" + File.separator + "test" + File.separator + "test.txt");
        if (!file_1.exists()) {
            file_1.mkdir();
            System.out.println("文件創建成功");
        }

        try {
//            PrintStream printStream=new PrintStream(file_2);
            printStream = new PrintStream(new FileOutputStream(file_2));
            String name = "陳加兵";
            int age = 22;
            float grade = 99.9f;

            printStream.println(name);//println()

            printStream.print(age);//print()

            printStream.println(grade);//print()

            printStream.format("姓名:%s,n年齡:%s,成績:%s%s", name, age, grade, "
");//format()

            printStream.printf("姓名:%s,n年齡:%s,成績:%s%s", name, age, grade, "
");

            printStream.append("c");   //append
            printStream.append("
chenjiabing",0,10);  //append
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } finally {
            if (printStream != null) {
                printStream.flush();
                printStream.close();
            }
        }


    }
}

PrintWriter

繼承Writer,主要針對的是字符流的操作

向文本輸出流打印對象的格式化表示形式。此類實現在 PrintStream 中的所有 print 方法。它不包含用于寫入原始字節的方法,對于這些字節,程序應該使用未編碼的字節流進行寫入。

PrintStream 類不同,如果啟用了自動刷新,則只有在調用 printlnprintfformat 的其中一個方法時才可能完成此操作,而不是每當正好輸出換行符時才完成。這些方法使用平臺自有的行分隔符概念,而不是換行符。

此類中的方法不會拋出 I/O 異常,盡管其某些構造方法可能拋出異常。客戶端可能會查詢調用 checkError() 是否出現錯誤。

構造函數

PrintWriter(File file) 使用指定文件創建不具有自動行刷新的新 PrintWriter

PrintWriter(OutputStream out) 根據現有的 OutputStream 創建不帶自動行刷新的新 PrintWriter

PrintWriter(OutputStream out, boolean autoFlush) 通過現有的 OutputStream 創建新的 PrintWriter

PrintWriter(String fileName) 創建具有指定文件名稱且不帶自動行刷新的新 PrintWriter

常用函數

這里的常用到的函數和PrintStream的差不多就不再詳細的列出來了,詳情請看幫助文檔

實例
package IO;

import java.io.*;

/**
 * Created by chenjiabing on 17-5-25.
 */
public class demo10 {
    public static void main(String[] args)
    {
        PrintWriter printWriter=null;
        File file=new File("/tmp"+File.separator+"test"+File.separator+"file.txt");
        try {
            printWriter=new PrintWriter(new FileOutputStream(file));
            printWriter.println("chenjiabing");
            printWriter.println("陳加兵");
        }catch (IOException e)
        {
            e.printStackTrace();
        }finally {
                if(printWriter!=null)
                {
                    printWriter.close();
                }
        }

    }
}
參考文章

http://www.cnblogs.com/lich/archive/2011/12/11/2284093.html

http://tool.oschina.net/uploads/apidocs/jdk-zh/java/io/PrintWriter.html

http://tool.oschina.net/uploads/apidocs/jdk-zh/java/io/PrintStream.html

http://blog.csdn.net/yyyandroid/article/details/7756390

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/67118.html

相關文章

  • 寫這么多系列博客,怪不得找不到女朋友

    摘要:前提好幾周沒更新博客了,對不斷支持我博客的童鞋們說聲抱歉了。熟悉我的人都知道我寫博客的時間比較早,而且堅持的時間也比較久,一直到現在也是一直保持著更新狀態。 showImg(https://segmentfault.com/img/remote/1460000014076586?w=1920&h=1080); 前提 好幾周沒更新博客了,對不斷支持我博客的童鞋們說聲:抱歉了!。自己這段時...

    JerryWangSAP 評論0 收藏0
  • Java IO學習筆記

    摘要:學習筆記二流的概念在程序中所有的數據都是以流的方式進行傳輸或保存的,程序需要數據的時候要使用輸入流讀取數據,而當程序需要將一些數據保存起來的時候,就要使用輸出流完成。主要功能是向文件中寫入內容構造函數根據給定的對象構造一個對象。 Java IO學習筆記二 流的概念 在程序中所有的數據都是以流的方式進行傳輸或保存的,程序需要數據的時候要使用輸入流讀取數據,而當程序需要將一些數據保存起來...

    ideaa 評論0 收藏0

發表評論

0條評論

syoya

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<