示例#1
0
        public static string NewLineString(this RecordDelimiterType type)
        {
            switch (type)
            {
            case RecordDelimiterType.LF:
                return("\n");

            case RecordDelimiterType.CR:
                return("\r");

            case RecordDelimiterType.CRLF:
                return("\r\n");

            case RecordDelimiterType.LFCR:
                return("\n\r");

            case RecordDelimiterType.RS:
                return("▲");

            case RecordDelimiterType.US:
                return("▼");

            case RecordDelimiterType.None:
                return(string.Empty);

            default:
                return(string.Empty);
            }
        }
 public DelimitedFileDetectionResult(string fileName, int skipRows = 0, int codePageId       = -1, bool byteOrderMark      = false, bool qualifyAlways   = false,
                                     string identifierInContainer  = "", string commentLine  = "#", string escapeCharacter = "\\", string fieldDelimiter = "",
                                     string fieldQualifier         = "", bool hasFieldHeader = true, bool isJson = false, bool noDelimitedFile = false, RecordDelimiterType recordDelimiterType = RecordDelimiterType.None)
 {
     FileName = fileName ?? throw new System.ArgumentNullException(nameof(fileName));
     IdentifierInContainer = identifierInContainer ?? string.Empty;
     SkipRows        = skipRows < 1 ? 0 : skipRows;
     CodePageId      = codePageId < 1 ? -1 : codePageId;
     ByteOrderMark   = byteOrderMark;
     CommentLine     = commentLine;
     EscapeCharacter = GetShortDisplay((escapeCharacter ?? string.Empty));
     FieldDelimiter  = GetShortDisplay((fieldDelimiter ?? string.Empty));
     FieldQualifier  = GetShortDisplay((fieldQualifier ?? string.Empty));
     HasFieldHeader  = hasFieldHeader;
     IsJson          = isJson;
     NoDelimitedFile = noDelimitedFile;
     QualifyAlways   = qualifyAlways;
     NewLine         = recordDelimiterType;
 }
示例#3
0
        public ImmutableFileFormat(bool isFixedLength      = false, bool qualifyAlways        = false, bool qualifyOnlyIfNeeded  = true,
                                   char escapeCharacter    = '\0', char fieldDelimiterChar    = ',', string delimiterPlaceholder = "",
                                   char fieldQualifierChar = '"', string qualifierPlaceholder = "", RecordDelimiterType newLine  = RecordDelimiterType.CRLF, string newLinePlaceholder = "")
        {
            IsFixedLength       = isFixedLength;
            QualifyAlways       = qualifyAlways;
            QualifyOnlyIfNeeded = qualifyOnlyIfNeeded;

            FieldDelimiterChar   = fieldDelimiterChar;
            DelimiterPlaceholder = delimiterPlaceholder ?? throw new System.ArgumentNullException(nameof(delimiterPlaceholder));

            FieldQualifierChar = fieldQualifierChar;
            QuotePlaceholder   = qualifierPlaceholder ?? throw new System.ArgumentNullException(nameof(qualifierPlaceholder));

            EscapeChar = escapeCharacter;

            NewLine            = newLine;
            NewLinePlaceholder = newLinePlaceholder ?? throw new System.ArgumentNullException(nameof(newLinePlaceholder));
        }
示例#4
0
 public DelimitedFileDetectionResultWithColumns(string fileName, int skipRows = 0, int codePageId           = -1, bool byteOrderMark    = false, bool qualifyAlways = false, string identifierInContainer = "", string commentLine = "#",
                                                string escapeCharacter        = "\\", string fieldDelimiter = "", string fieldQualifier = "", bool hasFieldHeader   = true, bool isJson = false, bool noDelimitedFile              = false, RecordDelimiterType recordDelimiterType = RecordDelimiterType.None,
                                                IEnumerable <IColumn> columns = null, string columnFile     = "") :
     base(fileName, skipRows, codePageId, byteOrderMark, qualifyAlways, identifierInContainer, commentLine, escapeCharacter, fieldDelimiter, fieldQualifier, hasFieldHeader, isJson, noDelimitedFile, recordDelimiterType)
 {
     Columns    = columns ?? new List <IColumn>();
     ColumnFile = columnFile ?? string.Empty;
 }
示例#5
0
        public static string Description(this RecordDelimiterType item)
        {
            var descConv = new EnumDescriptionConverter(typeof(RecordDelimiterType));

            return(descConv.ConvertToString(item));
        }