Esempio n. 1
0
        public void Open(string path, IValue encoding = null, string lineDelimiter = "\n", string eolDelimiter = null,
                         bool?monopoly = null)
        {
            Close();
            TextReader imReader;
            var        shareMode = (monopoly ?? true) ? FileShare.None : FileShare.ReadWrite;

            if (encoding == null)
            {
                imReader = Environment.FileOpener.OpenReader(path, shareMode);
            }
            else
            {
                var enc = TextEncodingEnum.GetEncoding(encoding);
                imReader = Environment.FileOpener.OpenReader(path, shareMode, enc);
            }
            _lineDelimiter = lineDelimiter ?? "\n";
            if (eolDelimiter != null)
            {
                _reader = new CustomLineFeedStreamReader(imReader, eolDelimiter, AnalyzeDefaultLineFeed);
            }
            else
            {
                _reader = new CustomLineFeedStreamReader(imReader, "\r\n", AnalyzeDefaultLineFeed);
            }
        }
Esempio n. 2
0
 public void Dispose()
 {
     if (_reader != null)
     {
         _reader.Dispose();
         _reader = null;
     }
 }
Esempio n. 3
0
        private void OpenStream(IStreamWrapper streamObj, IValue encoding = null, string lineDelimiter = "\n", string eolDelimiter = null)
        {
            TextReader imReader;

            if (encoding == null)
            {
                imReader = Environment.FileOpener.OpenReader(streamObj.GetUnderlyingStream(), Encoding.Default);
            }
            else
            {
                var enc = TextEncodingEnum.GetEncoding(encoding);
                imReader = Environment.FileOpener.OpenReader(streamObj.GetUnderlyingStream(), enc);
            }
            _reader = GetCustomLineFeedReader(imReader, lineDelimiter, eolDelimiter, AnalyzeDefaultLineFeed);
        }
Esempio n. 4
0
        private void OpenFile(string path, IValue encoding = null, string lineDelimiter = "\n", string eolDelimiter = null,
                              bool?monopoly = null)
        {
            TextReader imReader;
            var        shareMode = (monopoly ?? true) ? FileShare.None : FileShare.ReadWrite;

            if (encoding == null)
            {
                imReader = Environment.FileOpener.OpenReader(path, shareMode);
            }
            else
            {
                var enc = TextEncodingEnum.GetEncoding(encoding);
                imReader = Environment.FileOpener.OpenReader(path, shareMode, enc);
            }
            _reader = GetCustomLineFeedReader(imReader, lineDelimiter, eolDelimiter, AnalyzeDefaultLineFeed);
        }
Esempio n. 5
0
        public void Open(string path, IValue encoding = null, string lineDelimiter = "\n", string eolDelimiter = null)
        {
            TextReader imReader;

            if (encoding == null)
            {
                imReader = Environment.FileOpener.OpenReader(path);
            }
            else
            {
                var enc = TextEncodingEnum.GetEncoding(encoding);
                imReader = Environment.FileOpener.OpenReader(path, enc);
            }
            _lineDelimiter = lineDelimiter ?? "\n";
            if (eolDelimiter != null)
            {
                _reader = new CustomLineFeedStreamReader(imReader, eolDelimiter, AnalyzeDefaultLineFeed);
            }
            else
            {
                _reader = new CustomLineFeedStreamReader(imReader, "\r\n", AnalyzeDefaultLineFeed);
            }
        }