-2

使用 PrintWriter 写入文件时遇到问题。以下是我的代码:

String abc = request.getParameter("textAreaField"); //String is "a b c" (with spaces)
String fileA = dir + "/A";
PrintWriter fileWriterA = new PrintWriter(new FileOutputStream(fileA,true));
fileWriterA.println(abc);
fileWriterA.close();

我在这里遇到的问题是,在写入目录“dir”中的文件“A”时,只会写入来自 String abc 的“a”,而不会写入空格后的其余部分。代码中的字符串 abc 来自 html 中的文本区域,我的 servlet 中有上述代码。我无法理解为什么它不会将带有空格的字符串写入文件。我认为应该。我还通过打印字符串 abc 进行了检查,它确实打印了字符串“ab c”(带空格)。但它不会将其打印到文件中。我的代码有问题吗?任何帮助,将不胜感激。

提前致谢。

4

1 回答 1

0

我已经使用了您的代码并编写了一个 servlet 。它工作得很好。这是代码。

protected void doPost(HttpServletRequest request, HttpServletResponse response) 
        throws ServletException, IOException {
    System.out.println(request.getParameter("ta"));
    String abc = request.getParameter("ta");
    String fileA = "/A";
    PrintWriter fileWriterA = new PrintWriter(new FileOutputStream(fileA,true));
    fileWriterA.println(abc);
    fileWriterA.close();
}

这是jsp:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<form action="Test">
<textarea rows="20" cols="20" name="ta"></textarea><!-- having value -- check some spaces -->
<input type="submit" value="Submit">
</form>
</body>
</html>
于 2014-12-09T09:36:25.270 回答