将ArrayList String写入File时出错

时间:2014-03-26 10:59:46

标签: java arraylist

我正在尝试将arraylist字符串列表写入文件。 arraylist字符串实际上是从twitter JSON转换而来的字符串,我正在尝试将tweet文本写入文件。

但是,我一直收到这个错误:

Exception in thread "main" java.lang.NullPointerException
    at java.io.Writer.write(Unknown Source)
    at kr.ac.uos.datamining.test.main(test.java:32)

全班的代码如下:

    package kr.ac.uos.datamining;

    import java.io.File; 
    import java.io.FileNotFoundException; 
    import java.io.*;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.SQLException;
    import java.util.ArrayList;
    import java.util.List;

    import kr.ac.uos.datamining.JSONParser; 
    import kr.ac.uos.datamining.Tweet; 
    import kr.ac.uos.datamining.User;

    public class test {

    public static List <String> list = new ArrayList<String>();

    public static void main(String[] args) throws IOException, FileNotFoundException, InterruptedException, SQLException {

        JSONParser j = new JSONParser(new File("D:/curl-7.32.0/samsunggalaxy-01-23-2014.txt"));
        ArrayList<Tweet> tweets = j.getTweets();

        for(Tweet tweet : tweets){
            list.add(tweet.getText());
        }

        FileWriter writer = new FileWriter("D:/samsunggalaxy.txt");
        for (String tweet: list) {
Line 32   writer.write(tweet);
        }
        writer.close();   
    }
    }

由于它被称为未知来源,它是String tweet: list行的问题吗? 我试图将其更改为String str: list,但它不能正常工作

3 个答案:

答案 0 :(得分:0)

似乎你的一个推文对象是null。这就是问题所在。

答案 1 :(得分:0)

似乎String tweet为空,因此我会检查您的Tweet.getText()方法,以确保它永远不会返回null。

答案 2 :(得分:0)

获得NullPoineterException的唯一方法是您的文本为空,因此在编写之前验证您要写的内容。

for (String tweet: list) {
    if(tweet != null || !tweet.equals("")) {
        writer.write(tweet);
    }
}