A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 新晋猿工 于 2016-6-6 09:53 编辑

有个txt文件,里面大概是这样的:
1号XXX
2号XXXX
3号XXX
4号XXX
5号XX
6号XX
7号XXX
8号XXXX
9号XXX
10号XX
11号XXX
12号XXX
........一直到57号XXX
试下写一个程序把这个txt文件的内容里面的“XX号”给去掉
我用的是BufferedWriter和BufferedReader类的方法复制到一个新txt文件再改,老是爆空指针异常,哎,希望各位大神帮我看看呗。

7 个回复

倒序浏览
话说程序在哪里。。。
回复 使用道具 举报
板凳,坐等大神
回复 使用道具 举报
package com.heima.sida;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.PrintStream;

public class Test04 {
        public static void main(String[] args) throws Exception {
                BufferedReader br=new BufferedReader(new FileReader("b.txt"));
                PrintStream ps=new PrintStream("bb.txt");
                while(true){
                        String str=br.readLine();
                        if(str == null){
                                break;
                        }
                        int b=str.indexOf("X");
                        str=str.substring(0, b);
                        ps.println(str);
                }
                br.close();
                ps.close();
        }
}
回复 使用道具 举报
坐看 板凳大神不知道对不对, 测试一下
回复 使用道具 举报
本帖最后由 何亚辉 于 2016-6-7 11:50 编辑

package com.heima.IO;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class Day1_ClassTest2 {
        public static void main(String[] args) throws IOException {
                File f = new File("Student.txt");
                String name = f.getName();
                FileInputStream fis = new FileInputStream(f);
                byte[] b = new byte[1024 * 1024];

                int a;
                String s = null;
                while ((a = fis.read(b)) != -1) {
                        s = new String(b, 0, a);
                }

                s = s.replace("4号:阮清贵"+"\r\n", "");
                File f1 = new File("Student2.txt");
                FileOutputStream fos = new FileOutputStream(f1);

                fos.write(s.getBytes());
                fis.close();
                fos.close();

                System.out.println(f.delete());

                File f2 = new File(name);
                f1.renameTo(f2);

        }

}
回复 使用道具 举报
革命卍 发表于 2016-6-6 22:26
package com.heima.sida;

import java.io.BufferedReader;

这个X并不是“X”的意思,是人名,不同编号人名是不同的,可能我表述不准确,不好意思,还是谢谢你了
回复 使用道具 举报
何亚辉 发表于 2016-6-7 11:45
package com.heima.IO;

import java.io.File;

我想你弄错了我的意思,我是想把文件里面的 “X号” 这个前缀给去掉,不是把他整个删了,但还是谢谢了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马