有两个问题:
- 文件读取器中的路径是实际路径,但我想要
相对路径
从文件中读取内容后,我将该内容存储到一个字符串中,当我打印该字符串时,它不会打印实际的内容
cn 和 ci
的值以下是代码。String content = ""; String cn, ci; cn = request.getParameter("carrier_name"); ci = request.getParameter("carrier_id"); BufferedReader in = new BufferedReader(new FileReader("C:\\Users\\abcd\\Documents\\NetBeansProjects\\sendmail\\web\\mailformat.html")); String str; while ((str = in.readLine()) != null) { content += str; } in.close(); out.println(""+content+"");
邮件格式.html
hello
carrier name :<label >"+cn+"</label>
carrier id <label>"+ci+"</label>
最佳答案
您不能只阅读文本并期望 JVM 理解它并将其视为自定义字符串格式。您必须仔细检查从文件中读取的字符串,并找到应替换为参数的标记。
这个方法可能会派上用场:String.replace(CharSequence, CharSequennce)
对于相对路径部分:只需使用相对路径即可。它没有什么魔力。
关于java - 缓冲读取器按原样复制而不获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19837418/