fork download
  1. import java.io.*;
  2. import java.util.ArrayList;
  3. import java.util.StringTokenizer;
  4.  
  5. public class FileReader {
  6. public static final String PATH_TO_DATA_FILE = "playtennis.data";
  7.  
  8. public static ArrayList<Record> buildRecords() {
  9. BufferedReader reader = null;
  10. DataInputStream dis = null;
  11. ArrayList<Record> records = new ArrayList<Record>();
  12.  
  13. try {
  14. File f = new File(PATH_TO_DATA_FILE);
  15. reader = new BufferedReader(new InputStreamReader(fis));;
  16.  
  17. // read the first record of the file
  18. String line;
  19. Record r = null;
  20. ArrayList<DiscreteAttribute> attributes;
  21. while ((line = reader.readLine()) != null) {
  22. StringTokenizer st = new StringTokenizer(line, ",");
  23. attributes = new ArrayList<DiscreteAttribute>();
  24. r = new Record();
  25.  
  26. if(Hw1.NUM_ATTRS != st.countTokens()) {
  27. throw new Exception("Unknown number of attributes!");
  28. }
  29.  
  30. @SuppressWarnings("unused")
  31. String day = st.nextToken();
  32. String outlook = st.nextToken();
  33. String temperature = st.nextToken();
  34. String humidity = st.nextToken();
  35. String wind = st.nextToken();
  36. String playTennis = st.nextToken();
  37.  
  38. if(outlook.equalsIgnoreCase("overcast")) {
  39. attributes.add(new DiscreteAttribute("Outlook", DiscreteAttribute.Overcast));
  40. }
  41. else if(outlook.equalsIgnoreCase("sunny")) {
  42. attributes.add(new DiscreteAttribute("Outlook", DiscreteAttribute.Sunny));
  43. }
  44. else if(outlook.equalsIgnoreCase("rain")) {
  45. attributes.add(new DiscreteAttribute("Outlook", DiscreteAttribute.Rain));
  46. }
  47.  
  48. if(temperature.equalsIgnoreCase("hot")) {
  49. attributes.add(new DiscreteAttribute("Temperature", DiscreteAttribute.Hot));
  50. }
  51. else if(temperature.equalsIgnoreCase("mild")) {
  52. attributes.add(new DiscreteAttribute("Temperature", DiscreteAttribute.Mild));
  53. }
  54. else if(temperature.equalsIgnoreCase("cool")) {
  55. attributes.add(new DiscreteAttribute("Temperature", DiscreteAttribute.Cool));
  56. }
  57.  
  58. if(humidity.equalsIgnoreCase("high")) {
  59. attributes.add(new DiscreteAttribute("Humidity", DiscreteAttribute.High));
  60. }
  61. else if(humidity.equalsIgnoreCase("normal")) {
  62. attributes.add(new DiscreteAttribute("Humidity", DiscreteAttribute.Normal));
  63. }
  64.  
  65. if(wind.equalsIgnoreCase("weak")) {
  66. attributes.add(new DiscreteAttribute("Wind", DiscreteAttribute.Weak));
  67.  
  68. }
  69. else if(wind.equalsIgnoreCase("strong")) {
  70. attributes.add(new DiscreteAttribute("Wind", DiscreteAttribute.Strong));
  71.  
  72. }
  73.  
  74. if(playTennis.equalsIgnoreCase("no")) {
  75. attributes.add(new DiscreteAttribute("PlayTennis", DiscreteAttribute.PlayNo));
  76. }
  77. else if(playTennis.equalsIgnoreCase("yes")) {
  78. attributes.add(new DiscreteAttribute("PlayTennis", DiscreteAttribute.PlayYes));
  79. }
  80.  
  81. r.setAttributes(attributes);
  82. records.add(r);
  83. }
  84.  
  85. }
  86. catch (IOException e) {
  87. System.out.println("Uh oh, got an IOException error: " + e.getMessage());
  88. }
  89. catch (Exception e) {
  90. System.out.println("Uh oh, got an Exception error: " + e.getMessage());
  91. }
  92. finally {
  93. if (dis != null) {
  94. try {
  95. dis.close();
  96. } catch (IOException ioe) {
  97. System.out.println("IOException error trying to close the file: " + ioe.getMessage());
  98. }
  99. }
  100. }
  101. return records;
  102. }
  103. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
Main.java:5: error: class FileReader is public, should be declared in a file named FileReader.java
public class FileReader {
       ^
Main.java:8: error: cannot find symbol
    public static ArrayList<Record> buildRecords() {
                            ^
  symbol:   class Record
  location: class FileReader
Main.java:11: error: cannot find symbol
		ArrayList<Record> records = new ArrayList<Record>();
		          ^
  symbol:   class Record
  location: class FileReader
Main.java:11: error: cannot find symbol
		ArrayList<Record> records = new ArrayList<Record>();
		                                          ^
  symbol:   class Record
  location: class FileReader
Main.java:20: error: cannot find symbol
           Record r = null;
           ^
  symbol:   class Record
  location: class FileReader
Main.java:21: error: cannot find symbol
           ArrayList<DiscreteAttribute> attributes;
                     ^
  symbol:   class DiscreteAttribute
  location: class FileReader
Main.java:24: error: cannot find symbol
              attributes = new ArrayList<DiscreteAttribute>();
                                         ^
  symbol:   class DiscreteAttribute
  location: class FileReader
Main.java:25: error: cannot find symbol
              r = new Record();
                      ^
  symbol:   class Record
  location: class FileReader
Main.java:27: error: cannot find symbol
              if(Hw1.NUM_ATTRS != st.countTokens()) {
                 ^
  symbol:   variable Hw1
  location: class FileReader
Main.java:40: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Outlook", DiscreteAttribute.Overcast));
				                     ^
  symbol:   class DiscreteAttribute
  location: class FileReader
Main.java:40: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Outlook", DiscreteAttribute.Overcast));
				                                                  ^
  symbol:   variable DiscreteAttribute
  location: class FileReader
Main.java:43: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Outlook", DiscreteAttribute.Sunny));
				                     ^
  symbol:   class DiscreteAttribute
  location: class FileReader
Main.java:43: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Outlook", DiscreteAttribute.Sunny));
				                                                  ^
  symbol:   variable DiscreteAttribute
  location: class FileReader
Main.java:46: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Outlook", DiscreteAttribute.Rain));
				                     ^
  symbol:   class DiscreteAttribute
  location: class FileReader
Main.java:46: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Outlook", DiscreteAttribute.Rain));
				                                                  ^
  symbol:   variable DiscreteAttribute
  location: class FileReader
Main.java:50: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Temperature", DiscreteAttribute.Hot));
				                     ^
  symbol:   class DiscreteAttribute
  location: class FileReader
Main.java:50: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Temperature", DiscreteAttribute.Hot));
				                                                      ^
  symbol:   variable DiscreteAttribute
  location: class FileReader
Main.java:53: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Temperature", DiscreteAttribute.Mild));
				                     ^
  symbol:   class DiscreteAttribute
  location: class FileReader
Main.java:53: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Temperature", DiscreteAttribute.Mild));
				                                                      ^
  symbol:   variable DiscreteAttribute
  location: class FileReader
Main.java:56: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Temperature", DiscreteAttribute.Cool));
				                     ^
  symbol:   class DiscreteAttribute
  location: class FileReader
Main.java:56: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Temperature", DiscreteAttribute.Cool));
				                                                      ^
  symbol:   variable DiscreteAttribute
  location: class FileReader
Main.java:60: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Humidity", DiscreteAttribute.High));
				                     ^
  symbol:   class DiscreteAttribute
  location: class FileReader
Main.java:60: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Humidity", DiscreteAttribute.High));
				                                                   ^
  symbol:   variable DiscreteAttribute
  location: class FileReader
Main.java:63: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Humidity", DiscreteAttribute.Normal));
				                     ^
  symbol:   class DiscreteAttribute
  location: class FileReader
Main.java:63: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Humidity", DiscreteAttribute.Normal));
				                                                   ^
  symbol:   variable DiscreteAttribute
  location: class FileReader
Main.java:67: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Wind", DiscreteAttribute.Weak));
				                     ^
  symbol:   class DiscreteAttribute
  location: class FileReader
Main.java:67: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Wind", DiscreteAttribute.Weak));
				                                               ^
  symbol:   variable DiscreteAttribute
  location: class FileReader
Main.java:71: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Wind", DiscreteAttribute.Strong));
				                     ^
  symbol:   class DiscreteAttribute
  location: class FileReader
Main.java:71: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("Wind", DiscreteAttribute.Strong));
				                                               ^
  symbol:   variable DiscreteAttribute
  location: class FileReader
Main.java:76: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("PlayTennis", DiscreteAttribute.PlayNo));
				                     ^
  symbol:   class DiscreteAttribute
  location: class FileReader
Main.java:76: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("PlayTennis", DiscreteAttribute.PlayNo));
				                                                     ^
  symbol:   variable DiscreteAttribute
  location: class FileReader
Main.java:79: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("PlayTennis", DiscreteAttribute.PlayYes));
				                     ^
  symbol:   class DiscreteAttribute
  location: class FileReader
Main.java:79: error: cannot find symbol
				  attributes.add(new DiscreteAttribute("PlayTennis", DiscreteAttribute.PlayYes));
				                                                     ^
  symbol:   variable DiscreteAttribute
  location: class FileReader
33 errors
stdout
Standard output is empty