将 JTable 内容复制到 Excel 时出现问题
我有一个独立应用程序,在其中尝试将 JTable
的内容复制到 Excel 中,并在 JTable
的单元格中包含换行符。我已使用 "\""
对单元格内容进行换行。它工作正常,但我在 Excel 中得到一个方框类型的符号来代替换行符。如何在复制时删除该符号?有什么办法可以做到这一点吗?
I have a Standalone application in which I am trying to copy contents of JTable
into Excel with line breaks included in my cells of JTable
. I have used wrapping using "\""
to my cell contents. It's working fine but I am getting a square box type of symbol in place of line breaks in Excel. How to remove the symbol while copying? Is there any way to do this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
Excel 需要 DOS/Windows 换行符 (
"\r\n"
),而不是 Unix/Java 换行符(仅"\n"
)。要解决此问题,请使用以下代码:第一部分确保没有任何 DOS/Win 换行符,然后将所有内容转换为 DOS。
如果您坚持使用 Java 1.4,请使用
replaceAll()
。[编辑] 方框表示字符串中存在不可打印的字符。我建议使用 Excel 创建一个文件,其中在单元格中包含换行符,并检查 Excel 使用哪些字符。
Excel expects DOS/Windows line breaks (
"\r\n"
) instead of Unix/Java ones (just"\n"
). To fix this, use this code:The first part makes sure that you don't have any DOS/Win line breaks and then converts everything to DOS.
If you're stuck with Java 1.4, use
replaceAll()
.[EDIT] The square box means that there is an unprintable character in the string. I suggest to create a file with Excel which contains a line break in a cell and check which characters Excel uses.