2014-12-09 6 views
-1

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"단지 "는"문자열에서 ABC를 기록 할 것이며, 나머지 파일 "A"쓰는 동안 내가 여기 데 문제가

작성되지 않았습니다. 문자열 abc 여기 코드에서 html로 텍스트 영역에서 오는 및 내 서블릿 위의 코드가 있습니다. 공백이있는 문자열을 파일에 쓰지 않는 이유를 이해할 수 없습니다. 나는 그것이해야한다고 생각한다. 나는 또한 문자열 abc를 인쇄하여 검사했고 문자열 "a b c"(공백 포함)를 인쇄합니다. 하지만 파일에 인쇄하지는 않습니다. 내 코드에 문제가 있습니까? 어떤 도움을 주시면 감사하겠습니다.

미리 감사드립니다.

+0

당신은 텍스트 영역 *에 * 서블릿에서 제대로 전송되지 않은 : 여기

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입니다. 'PrintWriter'가 이것에 대한 책임이 있다는 생각은 어리 석다. – EJP

+0

abc에 예상되는 문자열이 포함되어 있는지 확인 했습니까? 난 수정 문자열로 시도하고 잘 작동합니다. – Jens

+0

@EJP : PrintWriter가 제대로 쓰지 않았다고 비난 한 적이 한 번도 없습니다. "내 코드에 문제가 있습니까?" 또한 내가 올바르게 문자열을 전송하는지 여부를 확인했는지 여부는 "내 문자열에도 abc을 인쇄하여 확인한 다음"공백을 사용하여 "a b c"문자열을 인쇄합니다. " – Hemang

답변

0

나는 귀하의 코드를 사용하여 서블릿을 작성했습니다. 그것은 절대적으로 잘 작동합니다. 여기에 코드가 있습니다.

<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>