簡體   English   中英

從Java中的文本文件讀取雙輸入

[英]Read double input from text file in java

我有一些關於從文本文件中讀取雙重輸入的問題

我正在編寫一個可以讀取輸入文件的程序,該文件包含這樣的數字

  • 3.4 5.0 12
  • 1.3 8.2 6
  • 0.8 9.1 2.3

任何人都有一些想法或技巧請.. ??

package Test;

import java.io.*;
import java.util.*;
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.ObjectInputStream;

public class readfileVector {
public static void main(String[] args){
    try{
        readDataFromFile();
    }catch(IOException ex){
        ex.printStackTrace();
    }


}
public static void readDataFromFile() throws IOException{
    double a, b, c;

    FileInputStream fis = null;
    try{
        fis = new FileInputStream(new File("D:\\Pro1\\vector.inp.txt"));
        DataInputStream dis = new DataInputStream(fis);

        a = dis.readDouble();
        b = dis.readDouble();
        c = dis.readDouble();

        System.out.println("double:" + a + "; double:" + b + ";double:" + c );
    }catch(IOException ex){
        ex.printStackTrace();
    }finally{
        if(fis != null)
            fis.close();
    }
}

我正在嘗試這樣做

String stringValue = new Scanner( new File("myDoubles.txt") ).useDelimiter("\\A").next();

// split string by any whitespace
String[] doublesAsStrings = stringValue.split("\\s+");

for( int i = 0; i < doublesAsStrings.length; i++ )
    double val = Double.parseDouble( doublesAsStrings[i] );

你明白了。

來源: 如何從文件內容創建Java字符串?

您可以使用掃描儀讀取文件,如下所示:

    Scanner s = new Scanner(new File(<your file>));

    while(s.hasNextDouble()){
          a = s.nextDouble();
          b = s.nextDouble();
          c = s.nextDouble();

          System.out.println("double:" + a + "; double:" + b + ";double:" + c );

    }

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM