Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在读取时使用.txt中存储的数据_Java_File Io - Fatal编程技术网

Java 如何在读取时使用.txt中存储的数据

Java 如何在读取时使用.txt中存储的数据,java,file-io,Java,File Io,我已将一些数据写入.txt文件,并从另一个帧读取.txt文件。我是否可以使用存储在.txt中的数据进行一些计算 public static double suggested(double lastline) { //double rate = lastline * 0.15; //double result = lastline - rate; //return result; } 假设.txt只得到1个双倍值。我不想只是展示它 编辑: public Weightlos

我已将一些数据写入.txt文件,并从另一个帧读取.txt文件。我是否可以使用存储在.txt中的数据进行一些计算

public static double suggested(double lastline)
{
    //double rate = lastline * 0.15;
    //double result = lastline - rate;
    //return result;
}
假设.txt只得到1个双倍值。我不想只是展示它

编辑:

public WeightlossFat()
{
    JPanel text = new JPanel();
    text.add(bmi);
    text.add(rbmi);
    text.add(bmr);
    text.add(rbmr);
    text.add(tdee);
    text.add(rtdee);
    text.setLayout(new GridLayout(1,3));

    JPanel percent = new JPanel();
    percent.add(suggested);
    percent.add(aggressive);
    percent.add(reckless);
    percent.setLayout(new GridLayout(3,1));

    setLayout(new BorderLayout());
    add(text,BorderLayout.NORTH);
    add(percent,BorderLayout.CENTER);

    suggested.addActionListener(this);
    aggressive.addActionListener(this);
    reckless.addActionListener(this);

    try
    {

        BufferedReader bmi = new BufferedReader(new FileReader("bmi.txt"));

        while((line = bmi.readLine()) != null)
        {
            currentline = line;
        }
        lastline = currentline;
        rbmi.setText(lastline);
        bmi.close();

        BufferedReader bmr = new BufferedReader(new FileReader("bmr.txt"));

        while((line = bmr.readLine()) != null)
        {
            currentline = line;
        }
        lastline = currentline;
        rbmr.setText(lastline);
        bmr.close();

        BufferedReader tdee = new BufferedReader(new FileReader("tdee.txt"));

        while((line = tdee.readLine()) != null)
        {
            currentline = line;
        }
        lastline = currentline;
        rtdee.setText(lastline);
        tdee.close();           
    }
    catch(Exception e)
    {
        JOptionPane.showMessageDialog(null, "File does not exist", "Error", JOptionPane.ERROR_MESSAGE);
    }

}
从上面的代码中可以看到,我可以显示.txt中的内容,但是我想使用.txt中的值进行一些计算

public static double suggested(double lastline)
{
    //double rate = lastline * 0.15;
    //double result = lastline - rate;
    //return result;
}

有人能教我如何使用这个值吗?

我还没有完全理解你的问题。当然,使用Java,您可以读取/写入.txt文件并获取这些值进行计算。例如,您有以下文件: 10.2 7.4 3.4


您可以读取这些值,将它们存储在向量或数组列表中,并进行一些计算,例如求和。我希望这个答案对你非常有用

读取包含各种数据(单词和数字)的文本的一种非常简单的方法是使用扫描仪

Scanner scanner = new Scanner( new File( "x.txt" ) );
如果你期望双倍回报:

double dVal = scanner.nextDouble();
或整数:

int iVal = scanner.nextInt();
您可以在读取之前进行测试,以确保文件正确:

if( scanner.hasNextDouble() ){
    double dVal = scanner.nextDouble();
}
在这两者之间,您可以阅读字符串“tokens”:


等等。

我认为使用textfield更好。 你可以这样用

插入值

JTextField txtBmi = new JTextFiled()
txtBmi.setText(bmi);
text.add(txtBmi);
获得价值

int numBmi = Integer.parseInt(txtBmi.getText());
和。。下面的事情对吗,你想要吗

    int numBmi = 0;
    int numBmr = 0;
    int numTdee = 0;

    try
    {

        BufferedReader bmi = new BufferedReader(new FileReader("bmi.txt"));

        while((line = bmi.readLine()) != null)
        {
            currentline = line;
        }
        lastline = currentline;
        rbmi.setText(lastline);
        try {
            numBmi = Integer.parseInt(lastline);
        } catch (Exception e) {
        } 
        bmi.close();

        BufferedReader bmr = new BufferedReader(new FileReader("bmr.txt"));

        while((line = bmr.readLine()) != null)
        {
            currentline = line;
        }
        lastline = currentline;
        rbmr.setText(lastline);
        try {
            numBmr = Integer.parseInt(lastline);
        } catch (Exception e) {
        } 
        bmr.close();

        BufferedReader tdee = new BufferedReader(new FileReader("tdee.txt"));

        while((line = tdee.readLine()) != null)
        {
            currentline = line;
        }
        lastline = currentline;
        rtdee.setText(lastline);
        try {
            numTdee = Integer.parseInt(lastline);
        } catch (Exception e) {
        } 
        tdee.close();           
    }
    catch(Exception e)
    {
        JOptionPane.showMessageDialog(null, "File does not exist", "Error", JOptionPane.ERROR_MESSAGE);
    }

    double calBmi = suggested(numBmi);
    double calBmr = suggested(numBmr);
    double calTdee = suggested(numTdee);
}

public static double suggested(double inputValue)
{
    double rate = inputValue * 0.15;
    double result = inputValue - rate;
    return result;
}

你的问题太模糊了。当然,可以读取文本文件并将其内容用于您需要的任何内容。我认为,你必须更详细地解释你的问题。你的问题不清楚。请填写并附上相关代码。你的问题很广泛。也许这有帮助:在编辑了你的问题之后,它仍然不是很清楚。我想,您正在寻找一种将字符串转换为双精度字符串的方法。如果是这样的话,请看或。为什么不简单地在“.txt”上发布几行代码的示例呢?上面所有的代码都是无用的。是的,这就是我想弄明白的。非常感谢你的帮助!