Download demo3.zip
Open JFileChooser
with only *.txt files and read resistance list
C:\ece538\Demo3>java Demo3 reading from circuit1.txt R R1 1 2 1.0 R R2 2 0 5.0 R R3 2 0 4.0 R R4 1 0 2.0 |
See also
Resistor.java
Demo3.java
import java.awt.Desktop; import java.io.File; import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; import java.util.*; import javax.swing.*; import javax.swing.filechooser.FileNameExtensionFilter; public class Demo3 { static ArrayList<Resistor> rlist = new ArrayList<Resistor>(); public static void read_circuit(String filename) { rlist.clear(); try (BufferedReader br = new BufferedReader(new FileReader(filename));) { String CurrentLine; while ((CurrentLine = br.readLine()) != null) { //Split each line of text file String delims = "[\\s]+"; String[] tokens = CurrentLine.trim().split(delims); if (tokens[0].equals("R")) { Resistor r = new Resistor(tokens); System.out.println(r); rlist.add(r); } } br.close(); } catch (IOException e) { System.err.println(e); } } public static void main(String[] args) { // Chooses the file JFileChooser fc = new JFileChooser(System.getProperty("user.dir")); fc.setAcceptAllFileFilterUsed(false); fc.addChoosableFileFilter(new FileNameExtensionFilter("Text files", "txt")); fc.setAcceptAllFileFilterUsed(true); File file = args.length>0? new File(args[0]): null; if (file == null) { int returnVal = fc.showOpenDialog(null); if (returnVal == JFileChooser.APPROVE_OPTION) { file = fc.getSelectedFile(); } } if (file == null) System.exit(-1); String filename = file.getName(); System.out.println("reading from "+filename); read_circuit(filename); } }
Maintained by John Loomis, updated Fri Feb 21 17:14:38 2020