问题描述
我的复制和粘贴适用于 Nattables。问题来了,如果某些单元格包含行分隔符。当我粘贴数据时,行分隔符被当作行分隔符,我的表格结构被破坏。
在CopyDataToClipboardCommand.class
中:
public CopyDataToClipboardCommand(String cellDelimeter,String rowDelimeter,IConfigRegistry configRegistry) {
this.cellDelimeter = cellDelimeter;
this.rowDelimeter = rowDelimeter;
this.configRegistry = configRegistry;
}
cellDelimeter 设置为 \t
,rowDelimeter 设置为 \r\n
。
有问题的单元格内部是用 \n
设置的新行。对此有什么想法吗?
解决方法
例如,如果您谈论粘贴到 Excel,那么问题不在 NatTable 中,而是在 Excel 中。 Excel 将换行符视为行分隔符。 CopyDataToClipboardCommand
中的配置用于添加该字符以添加新行。
如果您希望能够复制包含换行符的单元格内容并将其粘贴到 Excel 中,您可能需要覆盖 CopyDataCommandHandler#internalDoCommand()
并使用自定义序列化程序将单元格中的换行符替换为某些内容Excel可以处理。实际上我不知道什么字符被视为 Excel 单元格内的行分隔符。那么我可能会用一个简单的空格替换它。