Esempio n. 1
0
        private string GetCodeString()
        {
            if (_code == null)
            {
                using (var fStream = new FileStream(_path, FileMode.Open, FileAccess.Read))
                {
                    var buf = new byte[2];
                    fStream.Read(buf, 0, 2);
                    Encoding enc         = null;
                    bool     skipShebang = false;
                    if (IsLinuxScript(buf))
                    {
                        enc         = Encoding.UTF8; // скрипты с shebang считать в формате UTF-8
                        skipShebang = true;
                    }
                    else
                    {
                        fStream.Position = 0;
                        enc = FileOpener.AssumeEncoding(fStream, _noBomEncoding);
                    }

                    using (var reader = new StreamReader(fStream, enc))
                    {
                        if (skipShebang)
                        {
                            reader.ReadLine();
                        }

                        _code = reader.ReadToEnd();
                    }
                }
            }

            return(_code);
        }
Esempio n. 2
0
 private string GetCodeString()
 {
     using (var reader = FileOpener.OpenReader(_path))
     {
         return(reader.ReadToEnd());
     }
 }
Esempio n. 3
0
        private string GetCodeString()
        {
            if (_code == null)
            {
                using (var reader = FileOpener.OpenReader(_path))
                {
                    _code = reader.ReadToEnd();
                }
            }

            return(_code);
        }