Пример #1
0
        public void Reading_WithStringBasedProperty_ReturnsResult()
        {
            var def = new CsvDefinition <TestModel>(new TextCsvColumn <TestModel>("Name"))
            {
                FirstRowContainsHeaders   = true,
                ElementDelimiter          = ";",
                HasFieldsEnclosedInQuotes = true,
                Encoding = Encoding.UTF8
            };

            var data = "\"Name\";\"TestColors\"\r\n\"OK_NAME\";\"Red\"";

            var mapper = new TableDataMapper <TestModel>(def);
            var result = mapper.FromStream(new MemoryStream(Encoding.UTF8.GetBytes(data)));

            Assert.AreEqual("OK_NAME", result[0].Name);
        }
Пример #2
0
        /// <summary>
        ///
        /// </summary>
        /// <typeparam name="TRow"> Type of row to map to. </typeparam>
        /// <param name="mapper"> The mapper that provides value to object translation. </param>
        /// <param name="stream"> The stream to the file to read. </param>
        /// <returns></returns>
        public static CsvLine <TRow>[] ReadXlsxVerbose <TRow>(this TableDataMapper <TRow> mapper, Stream stream) where TRow : new()
        {
            var reader = new XlsxStreamReader(stream);

            return(mapper.GetRows(reader).ToArray());
        }
Пример #3
0
 /// <summary>
 /// Read a row from the file.
 /// </summary>
 /// <typeparam name="TRow"> Type of row to map to. </typeparam>
 /// <param name="mapper"> The mapper that provides value to object translation. </param>
 /// <param name="stream"> The stream to the file to read. </param>
 /// <returns></returns>
 public static TRow[] ReadXlsx <TRow>(this TableDataMapper <TRow> mapper, Stream stream) where TRow : new()
 {
     return(ReadXlsxVerbose(mapper, stream).Select(e => e.Row).ToArray());
 }
Пример #4
0
        /// <summary>
        /// Reads the specified stream.
        /// </summary>
        /// <typeparam name="TRow">The type of the row.</typeparam>
        /// <param name="stream">The stream.</param>
        /// <param name="definition">The definition.</param>
        /// <returns></returns>
        public static TRow[] ReadXlsx <TRow>(this CsvDefinition <TRow> definition, Stream stream) where TRow : new()
        {
            var mapper = new TableDataMapper <TRow>(definition);

            return(mapper.ReadXlsx(stream).ToArray());
        }
Пример #5
0
        /// <summary>
        /// Reads the specified stream.
        /// </summary>
        /// <typeparam name="TRow">The type of the row.</typeparam>
        /// <param name="stream">The stream.</param>
        /// <param name="definition">The definition.</param>
        /// <param name="detectEncodig">if set to <c>true</c> detects the byte encodig.</param>
        /// <returns></returns>
        public static TRow[] Read <TRow>(Stream stream, CsvDefinition <TRow> definition, bool detectEncodig) where TRow : new()
        {
            var mapper = new TableDataMapper <TRow>(definition);

            return(mapper.FromStream(stream, definition.Encoding, detectEncodig));
        }