我正在尝试将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
,但它不能正常工作
答案 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);
}
}