Java 将JTable内容复制到Excel时出现问题
我有一个独立的应用程序,我试图将Java 将JTable内容复制到Excel时出现问题,java,excel,jtable,Java,Excel,Jtable,我有一个独立的应用程序,我试图将JTable的内容复制到Excel中,在JTable的单元格中包含换行符。我使用了使用“\”对我的单元格内容进行包装。它工作正常,但我在Excel中得到了一个方形框类型的符号来代替换行符。如何在复制时删除符号?有什么方法吗?Excel希望使用DOS/Windows换行符(“\r\n”),而不是Unix/Java换行符(只是“\n”)。若要解决此问题,请使用以下代码: s = s.replace("\r\n", "\n").replace("\n", "\r\n")
JTable
的内容复制到Excel中,在JTable
的单元格中包含换行符。我使用了使用“\”
对我的单元格内容进行包装。它工作正常,但我在Excel中得到了一个方形框类型的符号来代替换行符。如何在复制时删除符号?有什么方法吗?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使用的字符。谢谢您的回复。.我尝试使用s.replace(“\r\n”,“\n”)。replace(“\n”,“\r\n”)。replace(“\n”,“\r\n”);但是这些框仍然出现在excel中。这是我的代码:S=(字符串)“\”+MPProcessQuestionTestItemTable.getValueAt(行选择[i],列选择[j])+“\”;S=S.replace(“\r\n”,“\n”).replace(“\n”,“\r\n”);stringbuffered.append(S);我已经编写了将Excel内容粘贴到Jtable的代码。正如您所说的,我跟踪了Excel的内容,但除了“\n”之外,我找不到任何特殊字符或符号“。在Excel中,要转到单元格中的下一行,需要按Alt+Enter。是否需要捕获该alt+事件并用这些alt+Enter事件替换jtable中的\n。如果复制该squarebox并粘贴到另一个单元格中,则会发生alt+Enter事件,即单元格中的新行。有人能帮我吗?谢谢,不,;尝试创建一个文件,其中每一位都与Excel生成的内容相同。在这种情况下,请删除第二个
replace()
,以确保输出中只有\n
。我已在每个单元格中创建了一个包含换行符(使用Alt+Enter)的excel文件,并将其粘贴到记事本文件中。我现在在记事本中获得了框。当我使用框将相同(从excel复制)内容从记事本复制到excel时。现在这些框在excel中不可见。您能建议我如何获取此框的值并用它替换吗?我已经尝试了很多次,但找不到解决方案。请帮助我解决此问题。是否有从excel中删除空方形框的建议(cloipboard)在将JTable内容粘贴到excel时,它出现在excel中的换行符之前。