0

如何从 txt 文件中读取整条记录,分别获取每个字段并将每个字段转换为单独的字符流。然后将单个字符的字符流(循环)写入纯 ASCII 输出文本文件。

我有我的类定义,我似乎无法正确编写输出文件,它一次必须是一个单独的纯 ascii 文本字符。我只需要一点帮助。这是我到目前为止所拥有的:

-----这是我的第一个问题。抱歉,如果它的格式不正确:(我正在尝试将一个对象文件转换为一个纯ASCII 字符文本文件,我称之为“yankees.txt”我读了它ObjectInputStream然后我应该得到每个字段分别并将每个字段转换为单独的字符流,并将每个字段中的字符一次一个字符写入我的“yankees.txt”

public class yankeesfilemain {

    public static void main(String[] args) throws EOFException {
        ObjectInputStream is;
        OutputStream os;

        yankees y;
        int i, j, k;
        String name, pos;
        int number;
        File fout;
        try {
            is = new ObjectInputStream(new
                FileInputStream("yankees.yanks"));
            y = (yankees)is.readObject();

            fout = new File("yankees.txt");
            os = new FileOutputStream(fout);

            while (y != null) {
                name = y.getname();
                pos = y.getpos();
                number = y.getnum();
                for (i = 0; i < .length(); i++) {}
                for (j = 0; j < .length(); j++) {
                    pos = y.getpos();   
                }
                for (k = 0; k < .length(); k++) {
                    number = y.getnum();
                }

                break;
            }
            os.close();
            is.close();
        } catch(EOFException eof) {
            eof.printStackTrace();
            System.exit(0);
        } catch(NullPointerException npe) {
            npe.printStackTrace();
            System.exit(0);
        } catch(NumberFormatException nfe) {
            nfe.printStackTrace();
            System.exit(0);
        } catch(IOException e) {
            e.printStackTrace();
            System.exit(0);
        }
    }
}
4

1 回答 1

0

请参考以下代码

public static void main(String[] args) throws IOException {

    InputStream in = new FileInputStream("C:\\11.txt");
    OutputStream out = new FileOutputStream("C:\\12.txt", true);

    try {
        byte[] buffer = new byte[1024];
        while (true) {
            int byteRead = in.read(buffer);
            if (byteRead == -1)
                break;
            out.write(buffer, 0, byteRead);
        }
    }

    catch (MalformedURLException ex) {
        System.err.println(args[0] + " is not a URL Java understands.");
    } finally {
        if (in != null)
            in.close();
        if (out != null) {
            out.close();
        }

    }

}
于 2013-09-23T01:31:38.917 回答