如果带附加文件的语句

时间:2015-06-11 13:37:47

标签: java try-catch randomaccessfile

只有在不是int / number的情况下才需要编写一个删除文件最后一个字符的程序。这就是我到目前为止所做的。

import java.io.*;

 public class RemoveTurn{
     public static void main(String[] arg){
         try{
         RandomAccessFile raf = new RandomAccessFile("test.txt", "rw");
         long length = raf.length();
         System.out.println("File Length="+raf.length());
         //supposing that last line is of 8 
         raf.setLength(length - 1);
         System.out.println("File Length="+raf.length());
         raf.close();
         }catch(Exception ex){
         ex.printStackTrace();
     }
   }
}

程序框架取自:happycodings.com

1 个答案:

答案 0 :(得分:0)

简单的想法是

  1. 将文件读取为字符串。
  2. 检查String的最后一个字符,如果删除它
  3. 将其写回文件
  4. 我绝对建议您使用apahe common IO,您的生活将变得非常轻松。

    示例代码:

        File f=new File("");
        String s = FileUtils.readFileToString(f);  //read the file using common IO
        char c=s.charAt(s.length()-1);   //get the last char of your string
        if(!(c>='0' && c<='9')){           //if not number
            s=s.substring(0,s.length()-1);  //remove it
        }
        FileUtils.write(f, s);  //write back to the file  using common IO
    

    修改

    您不需要使用Common IO,在Java中有许多其他reading fromwriting to文件的方式