加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

如何将文件指针重置为Java中的文件开头?

发布时间:2020-12-14 05:30:08 所属栏目:Java 来源:网络整理
导读:我正在用 Java编写一个程序,需要我比较2个文件中的数据.我必须从文件1的每行检查文件2的每一行,如果我找到匹配将它们写入第三个文件.在我读到文件2的末尾后,如何将指针重置到文件的开头? public class FiFo { public static void main(String[] args) { Fil
我正在用 Java编写一个程序,需要我比较2个文件中的数据.我必须从文件1的每行检查文件2的每一行,如果我找到匹配将它们写入第三个文件.在我读到文件2的末尾后,如何将指针重置到文件的开头?
public class FiFo {
    public static void main(String[] args) 
    {
        FileReader file1=new FileReader("d:testfilesFILE1.txt");
        FileReader file2=new FileReader("d:testfilesFILE2.txt");
        try{
            String s1,s2;
            while((s1=file1.data.readLine())!=null){
                System.out.println("s1: "+s1);
                while((s2=file2.data.readLine())!=null){
                    System.out.println("s2: "+s2);
                }
            }
            file1.closeFile();
            file2.closeFile();
        }catch (IOException e) {
            e.printStackTrace();
        }
    }
}

class FileReader {
    BufferedReader data;
    DataInputStream in;

    public FileReader(String fileName)
    {
        try{
            FileInputStream fstream = new FileInputStream(fileName);
            data = new BufferedReader(new InputStreamReader(fstream));
        }
        catch (IOException e) {
            e.printStackTrace();
        }
    } 

    public void closeFile()
    {
        try{
            in.close();
        }
        catch (IOException e) {
            e.printStackTrace();
        }
    }
}

解决方法

我相信 RandomAccessFile是你需要的.它包含:RandomAccessFile#seek和RandomAccessFile#getFilePointer.

rewind()是seek(0)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读