java 程序,textArea 内容保存到txt文件里面,结果用纪事本打开txt文件,不能显示换行

比如在Textarea:231321213123纪事本打开显示:231321213123请问怎么才能显示一致感谢回答者,得到他们的提示找到正确的方法了:Stringtex... 比如在Textarea:231321
213123

纪事本打开显示:231321213123
请问怎么才能显示一致
感谢回答者,得到他们的提示找到正确的方法了:
String text = ta1.getText();
String[] lines = text.split("\n");
FileWriter fw = new FileWriter(path);
BufferedWriter bw = new BufferedWriter(fw);
for (int i = 0; i < lines.length; i++) {
bw.write(lines[i] + "\r\n");
}
bw.close();

希望能够帮助遇到同样问题的人,再次感谢回答问题的人
展开
 我来答
tsjguaiguai
推荐于2016-01-18 · TA获得超过114个赞
知道答主
回答量:172
采纳率:0%
帮助的人:157万
展开全部
感冒头疼, 帮你写一个 拿去玩吧
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import java.awt.event.*;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintWriter;

import javax.swing.*;
import javax.swing.filechooser.FileFilter;

/**
*
* @author xiaobao
*
*/
public class Test extends JFrame{
JTextArea area;
public Test(){
setTitle("test");
setSize(300,300);
setLayout(new BorderLayout());
area = new JTextArea();
add(new JScrollPane(area),BorderLayout.CENTER);

JButton button = new JButton("save");
button.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e) {
save();
}

});
add(button,BorderLayout.SOUTH);
}
public void save(){
JFileChooser chooser = new JFileChooser();
chooser.setCurrentDirectory(new File("."));
chooser.setFileFilter(new FileFilter(){

@Override
public boolean accept(File f) {
return f.getName().toLowerCase().endsWith(".txt");
}

@Override
public String getDescription() {
return "SAVE TO";
}

});
int r = chooser.showSaveDialog(this);
if(r!=JFileChooser.APPROVE_OPTION) return;
File f = chooser.getSelectedFile();
String text = area.getText();
String[] lines = text.trim().split("\n");
try {
PrintWriter out = new PrintWriter(new FileOutputStream(f),true);
for(String line:lines)
out.println(line);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable(){

public void run() {
JFrame frame = new Test();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}

});
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wanjunfu
2010-11-04 · TA获得超过295个赞
知道答主
回答量:215
采纳率:0%
帮助的人:280万
展开全部
我明白你的意思。因为你从Textarea里读出来的时候,他就是231321213123这样的 没有办法去换行。

这个地方应该要处理下。你看看用字符流byte读取下试试,
我也没试过。
因为字符流可以一行一行的读取信息的。如果Textarea里的可以的话。

我也没试过 不知道行不行。哈哈,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
linzy410
2010-11-04 · TA获得超过257个赞
知道小有建树答主
回答量:259
采纳率:0%
帮助的人:201万
展开全部
要把字符串中的回车符替换成\t\n就可以在记事本里换行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ukdengyong
2010-11-04 · 超过11用户采纳过TA的回答
知道答主
回答量:69
采纳率:0%
帮助的人:34.3万
展开全部
想不到办法可以用HTMLEncode()函数。。

先获取textArea中的内容(带编码的)

读取的时候再把HTML编码翻译出来、、
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
matthew4219
2010-11-04
知道答主
回答量:19
采纳率:0%
帮助的人:7.4万
展开全部
打印看下从 textarea里面取到的是什么样子的字符串,如果是231321213123的话,那就没办法了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式