关于文件输入输出流
2015-02-05 22:30
148 查看
首先,从概念上的说,文件输入流,是指将数据从文件输入到内存(readFile),文件输出流,是指将数据从内存输出到文件(writeFile),拓展到输入输出流,输入流是指将数据从其他地方输入到内存(例如System.in,从控制台输入到内存),输出流是指将数据从内存输出到其他地方(System.out从内存到控制台),核心都是内存。
接下来,分别讲下二者的使用。
先是文件输入流(FileInputStream),创建时需要将准备写入内存的文件对象作为参数,(File file=new File(String filePath);FileInputStream in=new FileInputStream(file) ),读取文件内容时用read方法,其常用的重载方法有二,
1. read(),无参,从输入流中读取1Byte长的数据;(默认为byte型,如果要转换为char,可以强制转换,int value=in.read(); charval=(char)value;
2. read(Byte[]),从输入流中读取byte[]数组长度个byte的数据,并char val=(char)value;存入byte数组中
这两个方法都有一个同样的返回值int remain,即文件中剩余的数据个数,当剩余个数为0时,remain的值为-1;
再说文件输出流(FileOutputStream),创建时需要一个字符串型参数,作为输出路径,(该文件可以不存在,创建时输出流对象时会创建),eg:FileOutputStream in=new FileOutputStream(String despath),写入内容使使用write方法,out.write((data[i]+"").getBytes());这样才能写入字符
顺便mark一下如何获取键盘输入(控制台输入流)
,再用一个int数组将其保存
While(终止条件){
Scanner scan=new Scanner(System.in);
data[i]=scan.nextInt();
}
接下来,分别讲下二者的使用。
先是文件输入流(FileInputStream),创建时需要将准备写入内存的文件对象作为参数,(File file=new File(String filePath);FileInputStream in=new FileInputStream(file) ),读取文件内容时用read方法,其常用的重载方法有二,
1. read(),无参,从输入流中读取1Byte长的数据;(默认为byte型,如果要转换为char,可以强制转换,int value=in.read(); charval=(char)value;
2. read(Byte[]),从输入流中读取byte[]数组长度个byte的数据,并char val=(char)value;存入byte数组中
这两个方法都有一个同样的返回值int remain,即文件中剩余的数据个数,当剩余个数为0时,remain的值为-1;
再说文件输出流(FileOutputStream),创建时需要一个字符串型参数,作为输出路径,(该文件可以不存在,创建时输出流对象时会创建),eg:FileOutputStream in=new FileOutputStream(String despath),写入内容使使用write方法,out.write((data[i]+"").getBytes());这样才能写入字符
顺便mark一下如何获取键盘输入(控制台输入流)
,再用一个int数组将其保存
While(终止条件){
Scanner scan=new Scanner(System.in);
data[i]=scan.nextInt();
}
相关文章推荐
- 关于文件输入输出的集中方法总结
- 关于文件输入输出
- 关于C++中输入输出的小结——读写文件、string
- 关于动态内存和输入输出文件
- C++关于文件输入输出的简单操作
- c++ primer 3rd 关于文件输入输出···
- 关于文件管理输入输出的练习
- 关于建立文件夹和文件的问题
- 请教关于 license.licx 不能转换成2进制文件!(c# 开发web应用程序)
- 今天研究了一下关于Asp.net文件上传时的内存消耗问题
- 关于程序集配置文件(App.config)的问题
- 关于Adodb.Stream的写数据库数据到客户端文件的实践
- 关于建立《文件格式、协议大全》共享版 的想法
- 关于httpclient上传文件是中文名称的处理
- 关于文件下载
- 关于“使用xmlspy编写xsl文件时候,在xsl解释xml文件的时候总是使用utf-16编码”的解决办法
- [我的ASP.net学习历程]有关于.dll文件的迷惑
- 关于大文件下载
- 关于Outlook Express的dbx文件和Outlook/Exchange的pst文件
- 关于重做日志文件和归档文件的问题