2013-01-09 40 views
0

有一些生成的代码可以生成地图。放置在地图中的值是多行字符串。
例子:在复制/粘贴日食中保留格式

theMap.put("SOMEKEY", "Line 1 of string. 
       Also line 2 of string. 
       Perhaps more"); 

当我试图复制/粘贴代码到eclipse我得到红色的错误是由于地图中的值的格式。
我google和found和在这里,在Eclipse中有一个配置保留在字符串文字的格式,但它似乎并没有在这种情况下工作。
是否有其他配置选项?

+0

如何生成的代码? – jlordo

+0

用''\ n“'用您选择的文本编辑器在eclipse中替换换行符。如果您没有后处理它,请使用具有宏功能的编辑器并编写一个宏,而不是仅检测要替换的换行符。 – MrSmith42

+0

@ MrSmith42:如何在文本编辑器的替换函数中声明换行符以便用'\ n'替换它们? – Jim

回答

2

如果你只需要保留空间,请使用\ n字符是这样的:

theMap.put("SOMEKEY", "Line 1 of string.\nAlso line 2 of string.\nPerhaps more"); 

或者,如果你想让它多:

theMap.put("SOMEKEY", "Line 1 of string." 
       +"\nAlso line 2 of string." 
       +"\nPerhaps more"); 

如果您只粘贴的字符串值成空字符串(""),要能够做到这一点,你需要启用以下设置:window> preferences> java> editor>键入并检查最后一个选项(当粘贴到字符串文字时转义文本)

+0

我的问题是我需要**粘贴现有的片段**。不是如何修改它们 – Jim

+0

我已经使用可以帮助你的选项编辑我的文章。你必须将一个字符串文字粘贴到空引号中才能运行 –

+0

我试过这种配置。在这种情况下不起作用 – Jim

0
theMap.put("SOMEKEY", "Line 1 of string.\nAlso line 2 of string.\nPerhaps more"); 

要分成多行:

theMap.put("SOMEKEY", "Line 1 of string.\nAlso line 2 of string.\n" + 
     "Perhaps more"); 

如果你想从文件中读取多行:

String s, fullString; 
while ((s = bufferedReader.readLine()) != null) { 
    fullString += s + "\n"; 
} 
bufferedReader.close(); 
theMap.put("SOMEKEY", fullString); 
+0

你的意思是手动执行此操作吗?我的问题是我需要**粘贴现有片段**。不是如何修改它们 – Jim

+0

@Jim为什么你需要粘贴现有的片段?我可以想到另一种方式:你可以从文件中读取。 – Doorknob