如何在linux中编译几个java类和文本文件

时间:2012-09-12 21:37:53

标签: java linux

我有两个课程:main.javadata.java。编程需要首先从data.txt文件中读取数据。它适用于Windows系统。但现在我使用ssh链接linux服务器进行编译,但它不起作用。

我将main.javadata.javadata.txt放在同一个文件夹中。运行后javac data.java && javac main.java概括了6个类:main.classdata.classmain.java中定义的某个类。最后我运行java main,或java main && java data全部显示NullPointerException

我使用data.txt

代码中./data.txt的链接

也许他们不能放在同一个文件夹或其他一些原因。请帮帮我。

提前谢谢。

data.java的部分代码:

import java.io.EOFException;

import java.io.FileReader;

import java.io.IOException;
import java.io.LineNumberReader;   
import java.util.StringTokenizer;

public class data{

    private LineNumberReader in; 
    String filename;

    public data(String file){
        filename = file;
        readProblem(); 
        readdis();
        read();
    }
 }

部分main.java

的代码
import java.util.*;
import java.io.*;

class main{
    public static void main (String[] args) {   
        //Define parameters of the algorithm   
        String file = new String("./data.txt");   

1 个答案:

答案 0 :(得分:0)

字符编码和不同的行结尾可能起作用。

BufferedReader.readLine 将删除可能的行结尾。

可以明确设置字符集,例如设置为"Windows-1252",Windows Latin-1。为此用途

BufferedReader in = new BufferedReader(new InputStreamReader(
        new FileInputStream(file, "Windows-1252");