当前位置: 技术问答>java相关
java IO 的类太复杂了,我到底该用哪些啊?
来源: 互联网 发布时间:2015-01-08
本文导语: 我的印象是象InputStream和OutputStream这两个类是要被FileReader以及FileWrite所取代。但参考书上还用很大篇幅来介绍前面的两种类。 另外,这个地方的用法简直太复杂了,哪位大侠能凭经验告诉我哪些是必须掌握的,而哪...
我的印象是象InputStream和OutputStream这两个类是要被FileReader以及FileWrite所取代。但参考书上还用很大篇幅来介绍前面的两种类。
另外,这个地方的用法简直太复杂了,哪位大侠能凭经验告诉我哪些是必须掌握的,而哪些可以缓点时间再啃?
另外,这个地方的用法简直太复杂了,哪位大侠能凭经验告诉我哪些是必须掌握的,而哪些可以缓点时间再啃?
|
我也是初学者,刚开始看到IO类这么庞大我也挺头疼,不过后来发现确实设计得不错,Java的IO是一个分层次的结构,每层都负责一定的功能,又为上层提供数据,用的时候把需要用到的功能串起来就行了。
举个例子:
如果你是对文本流操作的话,可以这样定义输入流:
BufferedReader in=new BufferedReader(new FileReader(file_name)); //file_name是String串
然后用s_line=in.readLine(); 来读取一行数据。
可以这样定义输出流:
PrintWriter out=new PrintWriter(new BufferedWriter(new FileWriter(file_name)));
然后用out.println(s_line); 向文件file_name写入一行数据。
拿上面的定义输入流来简单解释一下,FileReader类提供了读取磁盘文件的功能,它可以提供数据,但不能直接使用,就需要BufferedWriter来转换成需要的形式。
我刚用IO流的时候,编了个小例子,给你参考一下:
import java.io.*;
public class file_test
{
public static void main(String args[])
{
String lines[]=new String[1000];
int lines_count,i;
file_string fs=new file_string();
//read file
lines_count=fs.file2string("url_list.txt",lines);
//print the file content from array:Result[]
System.out.println("nThe line count is : "+lines_count);
for(i=0;i
举个例子:
如果你是对文本流操作的话,可以这样定义输入流:
BufferedReader in=new BufferedReader(new FileReader(file_name)); //file_name是String串
然后用s_line=in.readLine(); 来读取一行数据。
可以这样定义输出流:
PrintWriter out=new PrintWriter(new BufferedWriter(new FileWriter(file_name)));
然后用out.println(s_line); 向文件file_name写入一行数据。
拿上面的定义输入流来简单解释一下,FileReader类提供了读取磁盘文件的功能,它可以提供数据,但不能直接使用,就需要BufferedWriter来转换成需要的形式。
我刚用IO流的时候,编了个小例子,给你参考一下:
import java.io.*;
public class file_test
{
public static void main(String args[])
{
String lines[]=new String[1000];
int lines_count,i;
file_string fs=new file_string();
//read file
lines_count=fs.file2string("url_list.txt",lines);
//print the file content from array:Result[]
System.out.println("nThe line count is : "+lines_count);
for(i=0;i