Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
05/14/12 15:21:28 (12 years ago)
Author:
sforsten
Message:

#1784: changes have been applied, according to the review comments of mkommend

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances/3.3/TableFileParser.cs

    r7603 r7805  
    3333  public class TableFileParser {
    3434    private const int BUFFER_SIZE = 1024;
    35     private readonly char[] POSSIBLE_SEPARATORS = new char[] { ',', ';', '\t' };
     35    private static readonly char[] POSSIBLE_SEPARATORS = new char[] { ',', ';', '\t' };
    3636    private Tokenizer tokenizer;
    3737    private List<List<object>> rowValues;
     
    7575    }
    7676
    77     public void Parse(string fileName) {
    78       NumberFormatInfo numberFormat;
    79       DateTimeFormatInfo dateTimeFormatInfo;
    80       char separator;
    81       DetermineFileFormat(fileName, out numberFormat, out dateTimeFormatInfo, out separator);
    82       using (StreamReader reader = new StreamReader(fileName)) {
     77    public void Parse(string fileName, NumberFormatInfo numberFormat, DateTimeFormatInfo dateTimeFormatInfo, char separator) {
     78      Parse(new FileStream(fileName, FileMode.Open), numberFormat, dateTimeFormatInfo, separator);
     79    }
     80
     81    public void Parse(Stream stream, NumberFormatInfo numberFormat, DateTimeFormatInfo dateTimeFormatInfo, char separator) {
     82      using (StreamReader reader = new StreamReader(stream)) {
    8383        tokenizer = new Tokenizer(reader, numberFormat, dateTimeFormatInfo, separator);
    8484        // parse the file
     
    125125    }
    126126
    127     private void DetermineFileFormat(string fileName, out NumberFormatInfo numberFormat, out DateTimeFormatInfo dateTimeFormatInfo, out char separator) {
    128       using (StreamReader reader = new StreamReader(fileName)) {
     127    public static void DetermineFileFormat(string path, out NumberFormatInfo numberFormat, out DateTimeFormatInfo dateTimeFormatInfo, out char separator) {
     128      DetermineFileFormat(new FileStream(path, FileMode.Open), out numberFormat, out dateTimeFormatInfo, out separator);
     129    }
     130
     131    public static void DetermineFileFormat(Stream stream, out NumberFormatInfo numberFormat, out DateTimeFormatInfo dateTimeFormatInfo, out char separator) {
     132      using (StreamReader reader = new StreamReader(stream)) {
    129133        // skip first line
    130134        reader.ReadLine();
     
    197201    }
    198202
    199     private int OccurrencesOf(Dictionary<char, int> charCounts, char c) {
     203    private static int OccurrencesOf(Dictionary<char, int> charCounts, char c) {
    200204      return charCounts.ContainsKey(c) ? charCounts[c] : 0;
    201205    }
Note: See TracChangeset for help on using the changeset viewer.