我正在尝试制作面向对象的地址簿,我随机生成名称,地址,电话号码,并将其输出到CSV文件中。我已经创建了很多类来格式化名称和地址,但我正在努力使用我的fileReader类,这里的目标是让主类调用fileReader类,读入我放置的文件,然后添加它到正确的数组列表。我尝试了一些不同的方法,但它们似乎没有编译。我将在下面发布我的代码,但我想知道我是否在主类中正确初始化了zipcode的arrayList。另外,我一直在阅读有关fileReading的一些教程,看来我已经要求输入正确的参数,请求(String fileName),但是当我尝试运行它时,它不会接收文件。
package moduleaddress;
import java.io.File;
import java.util.ArrayList;
public class moduleAddress {
public static void main(String[] args) {
Phone phdiff = new Phone("Home", "952.621.2545");
CityStateZip csz = new CityStateZip("Oak Park", "CA", "91377");
ArrayList<String> zipCode = new ArrayList(loadCities("C:\\Users\\Jeff\\Documents\\CLU\\CSC 220\\Address\\zip_code_database_new.csv"));
System.out.println(phdiff.toString());
Phone ph = new Phone();
ph.setNumber("805.852.2545");
ph.setType("Work");
System.out.println(ph.toString() + " " + csz.toString());
System.out.println(csz.toString());
System.out.println(zipCode.toString());
}
}
package moduleaddress;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Scanner;
final public class AddressGenerator {
CityStateZip[] allCities;
private AddressGenerator() {
}
public void loadCities(String inputFilePath) throws FileNotFoundException{
File fileInput;
fileInput = new File(inputFilePath); // opening up file
PrintWriter pwOut = new PrintWriter("C:\\Users\\Jeff\\Documents\\CLU\\CSC 220\\Address\\addressBook1.csv"); // set the printwriter
Scanner scnrIn = new Scanner(fileInput); //inistiate scanner
pwOut.println("NAME, ADDRESS, ZIP CODE, CITY, STATE, PHONE NUMBER"); //Writing out the first line of the address book
ArrayList<String> zipCode = new ArrayList();
while (scnrIn.hasNext()) { // loop through data with .nextLine(), which reads line of text
zipCode.add(scnrIn.next());
}
scnrIn.close(); //close file
//public String generateState(){
// return(this.state[0]);
// }
}
}
如果您希望我发布这个课程,我还有其他课程,但这些是我正在努力的两个课程。到目前为止,其他所有事情都是正确编译的。