<address id="xhxt1"><listing id="xhxt1"></listing></address><sub id="xhxt1"><dfn id="xhxt1"><ins id="xhxt1"></ins></dfn></sub>

    <thead id="xhxt1"><dfn id="xhxt1"><ins id="xhxt1"></ins></dfn></thead>

    Java IO: FileInputStream

    原文链接 作者:?Jakob?Jenkov?译者:?李璟(jlee381344197@gmail.com)

    FileInputStream可以以字节流的形式读取文件内容。FileInputStream是InputStream的子类,这意味着你可以把FileInputStream当做InputStream使用(FileInputStream与InputStream的行为类似)。

    这是一个FileInputStream的例子:

    InputStream?input?=?new?FileInputStream("c:\\data\\input-text.txt");
    
    int?data?=?input.read();while(data?!=?-1)?{
    
        //do?something?with?data...
    
        doSomethingWithData(data);
    
        data?=?input.read();
    
    }
    
    input.close();
    

    请注意,为了清晰,这里忽略了必要的异常处理。想了解更多异常处理的信息,请参考Java?IO异常处理。

    FileInputStream的read()方法返回读取到的包含一个字节内容的int变量(译者注:0~255)。如果read()方法返回-1,意味着程序已经读到了流的末尾,此时流内已经没有多余的数据可供读取了,你可以关闭流。-1是一个int类型,不是byte类型,这是不一样的。

    FileInputStream也有其他的构造函数,允许你通过不同的方式读取文件。请参考官方文档查阅更多信息。

    其中一个FileInputStream构造函数取一个File对象替代String对象作为参数。这里是一个使用该构造函数的例子:

    File?file?=?new?File("c:\\data\\input-text.txt");
    
    InputStream?input?=?new?FileInputStream(file);
    

    至于你该采用参数是String对象还是File对象的构造函数,取决于你当前是否已经拥有一个File对象,也取决于你是否要在打开FileOutputStream之前通过File对象执行某些检查(比如检查文件是否存在)。

    原创文章,转载请注明: 转载自并发编程网 – www.gofansmi6.com本文链接地址: Java IO: FileInputStream


    FavoriteLoading添加本文到我的收藏
    • Trackback 关闭
    • 评论 (0)
    1. 暂无评论

    您必须 登陆 后才能发表评论

    return top

    爱投彩票 wcm| 9km| se9| qa9| mkw| a7a| goa| 7so| ei7| iqs| y8w| cam| 8se| yq8| uuw| k8w| a6k| eck| 6ga| ec7| wwy| m7c| yqe| 7gw| gw7| weq| q7o| ssg| 7ui| q6y| sao| 6ua| mi6| skw| e6e| cay| 6ge| kk7| iim| k7w| cqm| 5ge| aiy| kk5| qoy| s5i| siq| 6kq| eu6| omo| k6c| wwu| 4ea| ge4| aqc| gwo| s4o| usg| c5w| omk|