import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
public class continent {
public static void dazhou(String a,String[] b)
{
try
{
FileReader fr=new FileReader(a);
BufferedReader br=new BufferedReader(fr);
StringBuffer sb=new StringBuffer();
try
{
while(br.ready())
{
sb=sb.append("\t"+br.readLine());
}
String s1=sb.toString();
b=s1.split("\t");
}
finally
{
//System.out.println("OK");
}
}//try
catch(IOException e)
{
System.out.println("error");
}
}
public static void main(String args[])
{
File file=new File("c:\\cdn\\test2\\globalmsk1\\");
File[] tempFile=file.listFiles();//读取120文件
String[] af=null;
String[] an=null;
dazhou("C:\\cdn\\test2\\dazhou\\Africa.txt",af);
dazhou("C:\\cdn\\test2\\dazhou\\Antarctica.txt",an); System.out.println(af[1]);
}
}
错误提示:Exception in thread "main" java.lang.NullPointerException是和String[] af=null;
String[] an=null; 有关的吧这个问题怎么解决呢?
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
public class continent {
public static void dazhou(String a,String[] b)
{
try
{
FileReader fr=new FileReader(a);
BufferedReader br=new BufferedReader(fr);
StringBuffer sb=new StringBuffer();
try
{
while(br.ready())
{
sb=sb.append("\t"+br.readLine());
}
String s1=sb.toString();
b=s1.split("\t");
}
finally
{
//System.out.println("OK");
}
}//try
catch(IOException e)
{
System.out.println("error");
}
}
public static void main(String args[])
{
File file=new File("c:\\cdn\\test2\\globalmsk1\\");
File[] tempFile=file.listFiles();//读取120文件
String[] af=null;
String[] an=null;
dazhou("C:\\cdn\\test2\\dazhou\\Africa.txt",af);
dazhou("C:\\cdn\\test2\\dazhou\\Antarctica.txt",an); System.out.println(af[1]);
}
}
错误提示:Exception in thread "main" java.lang.NullPointerException是和String[] af=null;
String[] an=null; 有关的吧这个问题怎么解决呢?
楼主【cnhuai】截止到2008-07-20 21:23:57的历史汇总数据(不包括此帖):
发帖的总数量:56 发帖的总分数:938 每贴平均分数:16
回帖的总数量:42 得分贴总数量:0 回帖的得分率:0%
结贴的总数量:53 结贴的总分数:878
无满意结贴数:11 无满意结贴分:220
未结的帖子数:3 未结的总分数:60
结贴的百分比:94.64 % 结分的百分比:93.60 %
无满意结贴率:20.75 % 无满意结分率:25.06 %
值得尊敬
import java.io.File;
import java.io.FileReader;
import java.io.IOException;public class TestClass { public static String[] dazhou(String a) {
try { FileReader fr = new FileReader(a);
BufferedReader br = new BufferedReader(fr);
StringBuffer sb = new StringBuffer(); try {
while (br.ready()) { sb = sb.append("\t" + br.readLine()); } String s1 = sb.toString();
return s1.split("\t");
} finally {
// System.out.println("OK");
} }// try
catch (IOException e) {
System.out.println("error");
}
return null;
} public static void main(String args[]) {
File file = new File("c:\\cdn\\test2\\globalmsk1\\");
File[] tempFile = file.listFiles();// 读取120文件 String[] af = dazhou("C:\\cdn\\test2\\dazhou\\Africa.txt"); System.out.println(af[1]); }
}
String[] an=null;
这两个数组你没有初始化,虚拟机不会给它分配空间的,传到方法时会认为他为空,
所以你应该用楼上那样的方法,先给它一个空间,
或者直接给个设定的空间:
String[] af=new String[n];
n是你数组的长度,但一般不这样用,因为下文要用到的数组的大小是不定的,为了安全,只能用尽可能的大来满足下文的要求!
因此最好的解决方法是:
先得到该数组应该的大小,再初始化它!