Вставить строку в файл

Единственный способ вставить строку в текстовый файл для чтения оригинального файла и записи содержимого в временный файл с новой строки вставлен. Затем удалить исходный файл и переименовать временный файл с первоначальным названием.

В этом примере, вы должны предоставить 3 аргумента: имя файла, номер строки и строки, которая будет вставлена на указанный номер строки.

java jINSERT test.out 9 "hello world"

вставить строку "привет мир" в строке номер 9 в файле "test.out". Вы, конечно, нужно больше ошибок …

[JDK1.1]


import java.io.*;



 public class jINSERT {

   public static void main(String args[]){

     try {

       jINSERT j = new jINSERT();

       j.insertStringInFile

          (new File(args[0]),Integer.parseInt(args[1]), args[2]);

       }

     catch (Exception e) {

       e.printStackTrace();

       }

     }



   public void insertStringInFile(File inFile, int lineno, String lineToBeInserted

       throws Exception {

     // temp file

     File outFile = new File("$$$$$$$$.tmp");

     

     // input

     FileInputStream fis  = new FileInputStream(inFile);

     BufferedReader in = new BufferedReader

         (new InputStreamReader(fis));



     // output         

     FileOutputStream fos = new FileOutputStream(outFile);

     PrintWriter out = new PrintWriter(fos);



     String thisLine = "";

     int i =1;

     while ((thisLine = in.readLine()) != null) {

       if(i == linenoout.println(lineToBeInserted);

       out.println(thisLine);

       i++;

       }

    out.flush();

    out.close();

    in.close();

    

    inFile.delete();

    outFile.renameTo(inFile);

  }

}

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>