- Timestamp:
- 06/24/13 13:38:40 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
java/main/src/main/java/com/framsticks/parsers/FileSource.java
r78 r85 2 2 3 3 import com.framsticks.params.SourceInterface; 4 import com.framsticks.util.io.Encoding; 4 5 5 6 import java.io.*; … … 8 9 public class FileSource implements SourceInterface { 9 10 10 private BufferedReader reader; 11 private String filename; 12 13 public FileSource(String filename) throws IOException 14 { 11 private final BufferedReader reader; 12 private final String filename; 13 14 protected FileSource(InputStream stream, String filename) { 15 15 this.filename = filename; 16 reader = new BufferedReader(new FileReader(filename)); 16 this.reader = new BufferedReader(new InputStreamReader(stream, Encoding.getFramsticksCharset())); 17 } 18 19 public FileSource(String filename) throws IOException { 20 this(new FileInputStream(filename), filename); 17 21 } 18 22 19 23 public FileSource(InputStream stream) { 20 filename = "<stream>"; 21 reader = new BufferedReader(new InputStreamReader(stream)); 24 this(stream, "<stream>"); 22 25 } 23 26 24 25 @Override 26 public String readLine() 27 @Override 28 public String readLine() 27 29 { 28 30 try … … 35 37 } 36 38 37 38 39 @Override 40 public String getFilename() 39 41 { 40 42 return filename; 41 43 } 42 44 43 44 45 @Override 46 public String demangleInclude(String include) 45 47 { 46 48 if (!include.contains(java.io.File.separator)) { … … 52 54 } 53 55 include = currentFilePath + include; 54 } 56 } 55 57 return include; 56 58 } 57 59 58 59 60 @Override 61 public SourceInterface openInclude(String include) 60 62 { 61 63 try … … 65 67 catch(IOException e) 66 68 { 67 69 68 70 } 69 71 return null; 70 72 } 71 73 72 73 74 @Override 75 public void close() 74 76 { 75 77 try { 76 78 reader.close(); 77 79 } catch (IOException e) { 78 80 79 81 } 80 82 } 81 83 82 84 }
Note: See TracChangeset
for help on using the changeset viewer.