将 JTable 内容复制到 Excel 时出现问题

发布于 2024-08-08 15:36:17 字数 189 浏览 2 评论 0原文

我有一个独立应用程序,在其中尝试将 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

淡看悲欢离合 2024-08-15 15:36:17

Excel 需要 DOS/Windows 换行符 ("\r\n"),而不是 Unix/Java 换行符(仅 "\n")。要解决此问题,请使用以下代码:

s = s.replace("\r\n", "\n").replace("\n", "\r\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:

s = s.replace("\r\n", "\n").replace("\n", "\r\n");

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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文