之前给客户做的发送邮件的程序,今天突然要把邮件的发送内容都做成动态的,因为之前的需求没有这一项,导致现在要改的话会造成改动很多,经过协商把邮件的修改内容,都写到配置文件中,这样速度最快的方法。
因为邮件的格式排版,涉及到了换行,一开始认为在配置文件中,加上<br/>,应该就可以了。(在xml文件中"<"的转义是<不要忘记“;”,否则启动程序的时候会出现错误。">"的转义字符是">")。但是事与愿违,不行,直接给解析成<br/>了。
然后,我就换成了\n,同样是不行,跟踪发现,传到程序中解析的时候,字符串的值,成了“\\n”,我就想是不是String当做转义字符给处理了,然而,我调用Matcher.replaceAll(String s)也没有成功的转换为\n,到这里因为时间紧急,不能在耗费时间了,客户急着要。只能自己写方法,修改了。以下是我,动态修改字符串的方法。 思路 1.在String中在需要换行的地方加上r 2.然后在程序中转换。 方法很简单,总结的主要的是,解决问题不要在一棵树上吊死,条条大路通罗马。我们完全可以找其他的方法解决问题,只要我们有耐心。
下面我把代码粘出来,也许对大家有所帮助。
- /*
- line 为源字符串
- s = line.split("r"); r为替换的目标,你可以修改成你想要的其他字符
- */
- private String lineFeed (String line){
- String result = "";
- String s [] = new String [line.length()];
- s = line.split("r");
- for(int i = 0;i<s.length;i++){
- result = result +s[i]+"\r";
- };
- return result;
- }