相关疑难解决方法(0)

Java7 try-with-resources语句优势

我正在寻找Java7的新功能.我发现一个是 try-with-resources Statement.任何人都可以告诉我它究竟意味着什么?我们应该使用它的原因和位置,以及我们可以利用此功能的地方?即使是try声明也没有catch阻止让我感到困惑.

java java-7

50
推荐指数
5
解决办法
2万
查看次数

FileOutputStream:"close"方法是否也调用"flush"?

我对flush和close方法感到困惑.在我的代码中,我总是关闭我的FileOutputStream对象.但我想知道如果我必须在这里使用flush方法,我可以在哪里使用它?

我将编写一个重复下载4或5个文件的项目.我将编写一个方法(用于下载文件),我的方法将循环并重复下载文件.我的方法将有这样的代码.

close方法是否调用flush,或者在关闭之前是否必须使用flush?

try {
    InputStream inputStream = con.getInputStream();
    FileOutputStream outputStream = new FileOutputStream("C:\\programs\\TRYFILE.csv");

    int bytesRead = -1;
    byte[] buffer = new byte[4096];
    while ((bytesRead = inputStream.read(buffer)) != -1) {
    outputStream.write(buffer, 0, bytesRead);
}

} catch(Exception e) {
    //
} finally {
    outputStream.close();
    inputStream.close();
}    
Run Code Online (Sandbox Code Playgroud)

请注意,代码运行良好:它成功下载文件.但我不确定使用flush.

java io fileoutputstream

19
推荐指数
1
解决办法
1万
查看次数

我们真的需要在今天关闭()之前调用flush()吗?

在close()之前读了这个问题使用flush(),接受的答案是这只意味着你遵循模式.

就像BufferedWriter #close ()FilterOutputStream.#close(),如果所有缓冲的Stream/Writer都会flush()在我们调用的时候调用它close(),如果我们(开发人员和将要审查代码的开发人员)都知道这一点,那么我们真的还需要这个吗?如果是的话,原因是什么?

java io bufferedwriter writer steam

7
推荐指数
1
解决办法
2513
查看次数

使用Java中的BufferedWriter写入文件

我正在做一个实验室,我们必须读取外部文件,对数据进行一些统计,然后使用统计信息创建和写入新文件.我的程序中的所有内容都可以工作,除了编写文件,我无法理解为什么我的方法不起作用.

BufferedWriter writer;

public void writeStats(int word, int numSent, int shortest, int longest, int average)
{
    try
    {
        File file = new File("jefferson_stats.txt");
        file.createNewFile();

        writer = new BufferedWriter(new FileWriter(file));

        writer.write("Number of words: " + word );
        writer.newLine();
        writer.write("Number of sentences: " + numSent );
        writer.newLine();
        writer.write("Shortest sentence: " + shortest + " words");
        writer.newLine();
        writer.write("Longest sentence: " + longest + " words");
        writer.newLine();
        writer.write("Average sentence: " + average + " words");    
    }
    catch(FileNotFoundException e)
    {
        System.out.println("File Not Found");
        System.exit( 1 …
Run Code Online (Sandbox Code Playgroud)

java eclipse file-io filewriter bufferedwriter

5
推荐指数
1
解决办法
5万
查看次数

Java读/写文件 - BufferedReader BufferedWriter

这是一个代码片段,但基本上我想要做的是从名为'listings.txt'的文件中读取并写入名为'overview.txt'的文件.我想从'listings.txt'中取出信息并将它们按原样放入'overview.txt'中(稍后我将弄清楚其余部分).

创建文件'overview.txt'并显示循环遍历文件'listings.txt'并写入'overview.txt'.但是,一旦我打开文件'overview.txt',它就是空的.
有人可以通过快速浏览我的代码并发现错误的东西吗?

package yesOverview;

import java.io.BufferedReader;
import java.io.*;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.Scanner;
import java.util.logging.Level;
import java.util.logging.Logger;


public class yesOverview {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        String strInput = "foo.bar";
        System.out.print("Please enter the listings file (the full path to the file): ");
        strInput = input.next();

        //This makes sure that the inputed file is listings.txt as required for KET1 task 2
        while (strInput.contains("listings.txt") == false) {
            System.out.print("Incorrect file. Please enter listings …
Run Code Online (Sandbox Code Playgroud)

java io bufferedwriter bufferedreader

4
推荐指数
1
解决办法
7万
查看次数

java中的FileWriter没有写入txt文件

我试图从获取输入JOptionPane并存储什么用户输入到使用文本文件FileWriterclass.To确保从用户输入被存储在什么输入我写了一个System.out和显示我在的JOptionPane类型.不幸的是,当我打开.txt文件时,我输入的内容就出现了!顺便说一句,我输入的文件路径是正确的.

这是我的代码.帮我!

String playername = JOptionPane.showInputDialog("What Will Be Your Character's Name?");
System.out.println(playername);
try {
    FileWriter charectersname = new FileWriter("/Users/AlecStanton/Desktop/name.txt/");
    BufferedWriter out = new BufferedWriter(charectersname);
    out.write(playername);
    }
catch (IOException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

java filewriter

4
推荐指数
2
解决办法
3万
查看次数

BufferedWriter不会将所有数据写入文件

所以我编写了一个程序,假设将两个LinkedList的内容写入格式的文本文件中

"标题行1"

"标题行2"

"标题行3"

x1 y1

x2 y2

x3 y3

...

x1023 y1023

这是主要的编写代码:

    LinkedList<Double> xVal;
    LinkedList<Double> yVal;
    LinkedList<String> header;
    Analize test;
    Scanner scan = new Scanner(System.in);
    FileWriter fstream;
    BufferedWriter out;

    int i=1;
    test = new Analize(i);
    test.addData();
    test.calculate();


    //Writing ModY
    fstream = new FileWriter("BLOCK " +i+"_ModY.txt");
    out = new BufferedWriter(fstream);
    header = test.getHeader();
    xVal=test.getXList();
    yVal=test.getYListMod();


    //Write Header
    out.write(header.get(0)+"_modY");out.newLine();
    out.write(header.get(1));out.newLine();
    out.write(header.get(2));out.newLine();

    for(int j=0;j<xVal.size();j++)
    {
        double x=xVal.get(j);
        double y=yVal.get(j);
        out.write(x+"\t"+y+" "+j);out.newLine();
        //test code
        System.out.println(xVal.get(j)+"    "+yVal.get(j)+" "+j);
        //System.out.println(j);
    }
Run Code Online (Sandbox Code Playgroud)

真烦人的是测试代码行:System.out.println(xVal.get(j)+""+ yVal.get(j)+""+ j); …

java file bufferedwriter

2
推荐指数
1
解决办法
5349
查看次数

Bufferedwriter工作,但文件为空?

我有以下代码:

CSVmaker(LinkedList data) {
    String [] myLines = makeStrings(data);
  //  for (int k = 0; k<myLines.length; k++)
  //  System.out.println(myLines[]);




    this.file = new File("rawdata.csv");
        try {
            BufferedWriter buff = new BufferedWriter(new FileWriter(file));
            for (int i = 0; i<myLines.length; i++){
                buff.write(myLines[i]);
                buff.newLine();
                System.out.println("done");
            }
        } catch (IOException ex) {
          System.out.println("except");
        }



}
Run Code Online (Sandbox Code Playgroud)

不,我检查了myLines的内容,这些是正确的.

另外,我得到的印刷品就像我应该的那样经常打印"完成".csv已创建.

但是,如果我手动打开它,它是空的.

这可能是什么原因?

java file bufferedwriter

2
推荐指数
1
解决办法
7205
查看次数

写入文件问题

我正在使用此代码写入java中的文件.它一直有效,我100%肯定它的权利.但仍然没有写入文件.我甚至没有收到错误.

import java.io.BufferedWriter;   
import java.io.FileWriter;
import java.io.IOException;

public class writetofile {

    public static void main(String [] args){

        FileWriter fw;

        try {
            fw = new FileWriter("testfile.txt");

            BufferedWriter bw = new BufferedWriter(fw);

            bw.write("this is test");

            bw.write("this is test");
            bw.write("this is test");


        } catch (IOException e) {

            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }
}
Run Code Online (Sandbox Code Playgroud)

可能是其他问题吗?

java file-io

1
推荐指数
2
解决办法
2787
查看次数

在.txt文件上写入数据

我试图将值(在文本区域中键入)存储到txt文件中.以下代码正在创建program.txt文件,但数据未写入其中.我究竟做错了什么?

另外,如果我想在用户指定的.txt文件中保存这些值,怎么办呢?

b2.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent arg0) {
            try {

                o = new BufferedWriter(new FileWriter("program.txt"));

                o.write(t1.getText());
                o.write(",");
                o.write(t2.getText());
                o.write(",");
                o.write(t3.getText());
                o.write(",");
                o.write(t4.getText());
                o.write(",");
                o.write(t5.getText());
                o.write(",");
                o.write(t6.getText());
                o.write(",");
                o.write(t7.getText());
                o.write(",");

            }
             catch (IOException e){
                e.printStackTrace();
            }
Run Code Online (Sandbox Code Playgroud)

java swing java-io

1
推荐指数
1
解决办法
231
查看次数

为什么文件中没有所有条目?

在下面的程序中,循环迭代1000次,我使用FileWriter在文件中写入所有条目,但不幸的是程序最终只在文件中写入510(有时是415,有时是692,总是少于1000)条目,但循环迭代1000次.

import java.io.* ;
import java.util.*;

public class DemoWriter {

    public static void main(String[] args) throws Exception {

        List<String> receiverList = new ArrayList<String>() ;
        receiverList.add("abc@gmail.com") ;
        receiverList.add("pqr@ibibo.com") ;
        receiverList.add("xyz@gmail.com") ;

        FileWriter fw = new FileWriter("a.txt") ;
        BufferedWriter bw = new BufferedWriter(fw) ;

        int size = receiverList.size() ;

        String str ;
        int count = 0 ;
        for(int i = 1 ; i <= 1000 ; ++i){
            str = receiverList.get( (int) (Math.random() * size) ) + "\n" ;
            bw.write(++count + ".> " …
Run Code Online (Sandbox Code Playgroud)

java file-io

0
推荐指数
2
解决办法
497
查看次数

Java写入文本文件未完成

我正在使用BufferedWriter将一些数据写入文本文件.它比使用ODBC写入Access更快.代码看起来像这样:

BufferedWriter bw = new BufferedWriter(new FileWriter(new File(filePath), true));
Run Code Online (Sandbox Code Playgroud)

确实是使BufferedWriter追加,而不是覆盖.

bw.append(          
    country + "\t" +
    scenario + "\t" +
    tempStage + "\t" +
    year + "\t" +
    tempState
);
Run Code Online (Sandbox Code Playgroud)

它在以前的项目中对我有用.新问题:它只是在线中间扯出来.这是一个很好的路线:

SultanateOfBrunei   BeeBeeScenario  Other   2019
Run Code Online (Sandbox Code Playgroud)

最后一行通常如下所示:

SultanateOfBrunei   BeeBeeScenario  Other   2019 Nondyna
Run Code Online (Sandbox Code Playgroud)

或Sulta

甚至苏

我输入错误处理代码来忽略像那样奇怪的不完整的行.

这意味着并非所有数据都被写入.我可以放弃一个基准,没问题......但它似乎正在削减更多.模拟运行时间为1990年到2020年底,它通常会在2019年的某个地方出现.增加VM会有所帮助 - 它会进一步发展.但我只有一定的记忆!

任何见解?

谢谢!!

java database io text-files

-1
推荐指数
1
解决办法
74
查看次数