Пример #1
0
        private static string TrimAsNeeded(string line, FileSetup.LineTrimming trimOptions)
        {
            if (line.Length == 0)
            {
                return(String.Empty);
            }
            string val;

            switch (trimOptions)
            {
            case FileSetup.LineTrimming.Edge:
                val = line.Trim();
                break;

            case FileSetup.LineTrimming.All:
                val = line.ReduceWhiteSpace();
                break;

            default:
                val = line;
                break;
            }

            return(val);
        }
Пример #2
0
        // part 2c
        private static InfoParts HandleResults(string server, string dataset, string nameid,
                                               string filename, FileSetup.LineTrimming trimOptions, string filenotfound, string comment)
        {
            var      expandedFileName = Environment.ExpandEnvironmentVariables(nameid);
            FileInfo file             = new FileInfo(expandedFileName);
            var      filePath         = file.DirectoryName;
            var      simplefilename   = file.Name;
            var      parts            = new InfoParts(server, "file", DateTime.UtcNow);
            int      index            = 0;

            if (file.Exists)
            {
                using (FileStream fs = file.OpenRead()) // this shares with open files, no crash
                    using (StreamReader sr = new StreamReader(fs))
                    {
                        while (!sr.EndOfStream)
                        {
                            //var line = Utilities.RemoveAfter(sr.ReadLine().re, comment);
                            var    line = sr.ReadLine().RemoveAfter(comment);
                            string val  = TrimAsNeeded(line, trimOptions);
                            if (val.Length > 0)
                            {
                                ++index;
                                parts.Add(string.Empty, filePath, simplefilename, index, dataset, "String", val);
                            }
                        }
                    }
                if (parts.Parts.Count < 1)
                {
                    parts.Add(simplefilename, index, dataset, "String", comment);  // add comment line if there was no uncommented data in the file
                }
            }
            else
            {
                parts.Add(simplefilename, index, dataset, "String", filenotfound);
            }

            return(parts);
        }