A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

本帖最后由 薆情媬証書 于 2013-10-20 19:37 编辑

这里的count为什么存文文件形式里面不自增了?

一直都是    times=1

就是毕老师讲的property中软件使用次数限制的那个!!
  1. <p>import java.io.*;
  2. import java.util.*;</p><p>class d13_properties
  3. {
  4. public static void main(String[] args) throws IOException
  5. {
  6.   Properties pro = new Properties();</p><p>  File file = new File("d:\\info.txt");
  7.   if(!file.exists())
  8.    file.createNewFile();
  9.   
  10.   FileOutputStream fos = new FileOutputStream(file);
  11.   FileInputStream fis = new FileInputStream(file);
  12.   
  13.   pro.load(fis);
  14.   
  15.   int count=0;
  16.   String value = pro.getProperty("times");
  17.   if(value!=null)
  18.   {
  19.    count = Integer.parseInt(value);
  20.    if (count >= 5)
  21.    {
  22.     System.out.println("次数已到");
  23.    }
  24.   }
  25.   count++;</p><p>  pro.setProperty("times", String.valueOf(count));
  26.   pro.store(fos, "");
  27. }
  28. }

  29. </p><p> </p>
复制代码

评分

参与人数 1技术分 +1 收起 理由
李江 + 1 很给力!

查看全部评分

6 个回复

倒序浏览
你的count定义在main方法?
回复 使用道具 举报
本帖最后由 周学彬 于 2017-11-22 11:35 编辑

aaaaaaaaaaaa

评分

参与人数 1技术分 +1 收起 理由
周志龙 + 1

查看全部评分

回复 使用道具 举报
本帖最后由 我能学编程吗 于 2013-10-20 16:13 编辑

上楼说的对,具体原因我也想知道。既然没有知道具体原因的话就死记硬背吧,但是我觉得问题要简单化。 用最少的文字说明原因:
结论是:"在读一个文件时,不能让输入流与输出流同时关联这个文件"

假如hello.txt中有很多行数字:
File f = new File(hello.txt);
BufferedReader input= new BuferedReader(new FileReader(f));
BufferedWriter output= new BuferedWriter(new FileWriter(f));
input .readLine();//这里读到的内容将是null

所以如上代码改成下面的就可以读到内容了:
File f = new File(hello.txt);
BufferedReader input = new BuferedReader(new FileReader(f));
input .readLine();
BufferedWriter output = new BuferedWriter(new FileWriter(f));

评分

参与人数 1技术分 +1 收起 理由
To + 1 很给力!

查看全部评分

回复 使用道具 举报
上面所说的原因不明确,我想是不是可以从javaAPI中可以解释:是某些平台一次只允许一个 FileOutputStream(或其他文件写入对象)打开文件进行写入。在这种情况下,如果所涉及的文件已经打开,则此类中的构造方法将失败。
也就是说你这个文件第一次已经打开了。

评分

参与人数 1技术分 +1 收起 理由
To + 1 很给力!

查看全部评分

回复 使用道具 举报
是不是两个流关联一个问件,必须得先关掉一个流在关联另一个流?
求版主加分啊!!技术分不够啊!!
回复 使用道具 举报
To 金牌黑马 2013-10-20 19:12:56
7#
楼主你好,如果问题已解决请将帖子状态修改为提问结束,如果未解决请继续提问,谢谢合作
如果不会修改请看解释帖:http://bbs.itheima.com/thread-89313-1-1.html
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马