回 帖 发 新 帖 刷新版面

主题:上司又给我出难题了!谁能帮我一下啊!我实在是想不出来!!

我写了一程序只是第二次写入的数据会把第一次写的覆盖掉代码如下
现在上司又给我出难题了!要求每次从表单传来的参数存在不同的文本文件里也

就是一个参数对应文本文件!头大啊!这文本文件怎么建啊!人为建啊?还是根

据参数个数自动创建文本文件程序?三个参数就要建三个文本文件!好象没有这

样的吧》?这怎么做啊?用JSP!谁能告诉我啊?谢谢了!求救急急啊!!!!!



代码如下:

<form name="form1" method="post" action="baocun1.jsp">
<input name="tt" type="text" value="">
<input type="submit" name="提交" value="提交">

baocun1.jsp
……
<font face="隶书" size=5>
你输入的数据是
<FONT COLOR = Red >
<%
String path = request.getRealPath("/"); //取得目前目录的路径
FileReader fr = new FileReader(path + "\\1.txt"); //建立FileReader变量,

并设定由fr变量引用
BufferedReader br = new BufferedReader(fr); //建立BufferedReader变量,

并设定由br变量引用

String str=request.getParameter("tt");
br.close(); //关闭BufferedReader变量
fr.close(); //关闭档案
out.print(str); //输出参数
FileWriter fw = new FileWriter(path + "\\1.txt"); //建立FileWrite变量,

并设定由fw变量引用
fw.write(String.valueOf(str)); //将新数转换成字串後,再重新写入档案
fw.close(); //关闭档案
%>
</FONT>
已经写入文本文件1.txt中
</FONT>

回复列表 (共4个回复)

沙发

首先专声明:我也是初学者,说得不对时请别骂我.
拜读了你写的代码,我觉得你把参数值写进了当前目录的文件1.txt中似乎没什么问题.但你前面写的读文件流和读文件缓存流好象没起任何作用.若你想把每次从表单中读到的参数值都写进文件1.txt中,那么首先将1.txt中的内容读入一个字符串缓存流StringBuffer sb中,然后用 String str0=new String(sb)将其转换成字符串,再与从表单中读到的参数值相加,最后再写入文件1.txt中.

板凳

如果你想把每次从表单中读到的参数值写入不同的文件中,具体方法我暂时还没考虑好,但我可以给你提供一点思路:
首先确定你要起的文件名,譬如你想给文件起如下名字:
f1.txt、f2.txt、f3.txt、.... 那么你可以设一个int型变量n,再写一段读文件的代码,用try.....catch.....方法写:
String n="1"
while(1==1)
{ try{ String path = request.getRealPath("/");
       FileReader fr = new FileReader(path + "\\f"+n+".txt");
       BufferedReader br = new BufferedReader(fr);
       StringBuffer sb = new StringBuffer(br);
       String str0 = new String(sb);
       if(str0!=null)
         { n = String.valueOf(parseInt(n)+1);
         }
      }
  catch(IOException e){break;}
}
对不起,有急事,改天再续。

3 楼

快下班了,就大概说一下:
文件名可以是一样的,但存放的路径不一样。
如:c:\aa\tt.txt
    c:\aa\aa\tt.txt
    .......
 

4 楼

问题已经解决 结贴!!!!!

我来回复

您尚未登录,请登录后再回复。点此登录或注册