2015-04-17 212 views
1

我必須創建一個名爲Lab13.txt的文件。在文件中我有10個數字。我輸入10個數字,並且必須將Lab13.txt中的所有數字乘以10,並將所有新數字保存爲名爲Lab13_scale.txt的新文件。所以如果數字10在lab13.txt中,它將打印100到Lab13_scale.txt。以下是 我:讀取和寫入文件到java

import java.io.*; 

import java.util.Scanner; 
public class lab13 { 

    public static void main(String[] args) throws IOException{ 
     File temp = new File("Lab13.txt"); 
     Scanner file= new Scanner(temp); 


     PrintWriter writer = new PrintWriter("Lab13_scale.txt", "UTF-8"); 
     writer.println(""); 
     writer.close(); 

    } 

} 

如何乘以10的號碼,並將其導出到新的文件?

+0

你卡在哪裏? –

+0

你是什麼意思 – lawtonhself

+1

我的意思是我沒有看到任何相對於lab13.txt.it中的多個數字的任何事情,這是一個有很多步驟的過程。你的問題是什麼?從lab13取數字或者乘以?或寫入lab13_scale? –

回答

0

我會給你一個不同的方法。我從記憶中寫下了這些,如果你有任何錯誤,請告訴我。我認爲這些數字在每一行都是一個。

public static void main(String[] args) 
{ 

    String toWrite = ""; 
    try{ 
    String line; 
    BufferedReader reader = new BufferedReader(new FileReader("Lab13.txt")); 
    while((line = reader.readLine())!=null){ 
     int x = Integer.parseInt(line); 
     toWrite += (x*10) + "\n"; 
    } 
    File output = new File("lab13_scale.txt"); 
    if(!output.exists()) output.createNewFile(); 
    FileWriter writer = new FileWriter(output.getAbsoluteFile()); 
    BufferedWriter bWriter= new BufferedWriter(writer); 
    bWriter.write(toWrite); 
    bWriter.close(); 
}catch(Exception e){} 
} 
+0

我使用通用的異常類型。我認爲這是你的實驗室工作,所以我建議你去找出可以拋出什麼樣的異常。 –

+0

這真的很先進,我在java的第一年。我不是想聽起來很愚蠢,但你能簡化它,或解釋它是如何工作或如何做到這一點? – lawtonhself

+0

BufferedReader,FileReader基本上是讀取文件內容。 (它將其轉儲到緩衝區中)。然後我一行一行,並將一行的字符串內容轉換爲一個整數。然後我將整數乘以10,將它添加到toWrite字符串(我們的新輸出)並添加一個新行「\ n」。然後,我只需創建一個新文件,然後使用File Writer/Buffered Writer寫入新創建的文件。 –

0

如果數字之間用空格分隔,使用

file.nextInt(); 

全碼:

int[] nums = new int[10]; 
for(int i = 0; i < 10; i++){ 
    nums[i] = file.nextInt(); 
    nums[i] *= 10; 
} 

writer.println("");

for(int i = 0; i < 10; i++){ 
    writer.println(nums[i]); 
} 
1

這段代碼很簡單,因爲這:

import java.io.File; 
import java.io.FileNotFoundException; 
import java.io.PrintWriter; 
import java.util.Scanner; 


public class Lab13 { 

    public static void main(String[] args) throws FileNotFoundException { 
     Scanner scan = new Scanner(new File("Lab13.txt")); 
     PrintWriter print = new PrintWriter(new File("Lab13_scale.txt")); 

     while(scan.hasNext()){ 
      print.write(10 * scan.nextInt()+"\n"); 
     } 
     print.close(); 
     scan.close(); 
    } 

}