首页 新闻 搜索 专区 学院

java语句的运用

0
[已解决问题] 解决于 2013-06-23 22:36

在写入文本域/文本框内容时,怎么样将写进去的东西保存到文档?java编程中如何用流将文本框中的内容保存到文档

p
my  heart null的主页 my heart null | 菜鸟二级 | 园豆:209
提问于:2013-06-19 18:55
< >
分享
最佳答案
0

楼主指的是保存到word文档还是其他格式的文档,如果是word文档的话,有很多开源的插件可以做到。如果是一些普通格式的文档,直接用输出流的方式就可以解决了

奖励园豆:5
Marcos.W | 菜鸟二级 |园豆:230 | 2013-06-19 23:24

谢谢您,如果是txt文档,那就怎么用输入输出流写,帮帮忙????

my heart null | 园豆:209 (菜鸟二级) | 2013-06-20 13:30

@疯狂的笑自己1: 

/**
     * 写文件
     *
     * @Title: writeToFile
     * @Description:
     * @param
     * @return void
     * @throws
     */
    @Test
    public void writeToFile() {
        File file = new File("E:/1.txt");
        //要写入文件的内容
        String inputContent = "这是一个测试!!";
        OutputStreamWriter write = null;
        BufferedWriter writer = null;
        try {
            //若磁盘上的文件不存在,则新建一个
            if (!file.exists()) {
                file.createNewFile();
            }
            //需要设置编码,否则中文会乱码
            write = new OutputStreamWriter(new FileOutputStream(file), "UTF-8");
            //提高效率,将文件放入缓冲区
            write.flush();
            writer = new BufferedWriter(write);
            writer.write(inputContent);
            writer.flush();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                //一定要记得关闭write
                write.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

    /**
     * 读文件
     * @Title: readFromFile
     * @Description:
     * @param
     * @return void
     * @throws
     */
    @Test
    public void readFromFile() {
        //得到的内容
        String outputContent = "";
        InputStreamReader read = null;
        BufferedReader reader = null;
        try {
            //文件
            File file = new File("E:/1.txt");
            //当文件存在并且是一个文件类型时,继续操作
            if (file.exists() && file.isFile()) {
                //注意定义编码,不然中文会出错哦
                read = new InputStreamReader(new FileInputStream(file), "UTF-8");
                reader = new BufferedReader(read);
                int readChar = 0;
                //一次读取一个字符,直到没有为止
                while ((readChar = reader.read()) != -1) {
                    outputContent += (char)readChar;
                }
                System.out.println(outputContent);
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                //记得关闭流
                read.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

Marcos.W | 园豆:230 (菜鸟二级) | 2013-06-21 21:13

@Marcos.W: 谢谢!!!

my heart null | 园豆:209 (菜鸟二级) | 2013-06-23 22:31
其他回答(1)
0

直接用commons-io包,里面FileUtils类能够满足我们日常开发的绝大部分要求

保存文件只需要调用write系列方法如write(File file, CharSequence data)

writeStringToFile(File file, String data, Charset encoding) 都能满足要求

api参见http://commons.apache.org/proper/commons-io/javadocs/api-2.4/org/apache/commons/io/FileUtils.html

cnblogs_chen | 园豆:206 (菜鸟二级) | 2013-06-21 09:40

谢谢您 !!!

支持(0) 反对(0) my heart null | 园豆:209 (菜鸟二级) | 2013-06-23 22:36
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册