C# podział długiego numery na części

0

Witam!
Potrzebuję podzielić numer (00001201603171314570210, tzn będzie importowany plik z dużą ilością takich numerów, zapisane będzie to w tablicy) na taki format:
00001 20160317131457 02 1 0 (każda część będzie musiała być zapisana w osobnej tabeli w bazie SQL). I zapisać to do tablicy(tylko nie wiem czy jednej, kilku, czy jak, ale najpierw muszę jakoś dzelić pojedyńczy numer i zapisać go w tablicy).
Próbowałem nieudolnie użyć Split, ale nie daje sobie rady.
Mógłby mi ktoś w tym pomóc, nakierować cokolwiek?

Pozdrawiam!

1

na podstawie czego (jakiej zasady) mialo by ten numer podzielic?

0

Czy spacje zawsze będą wsadzane w tych samych pozycjach? Czy liczby po spacjach będą miały zawsze taką samą długość (zawsze jednocyfrowe, dwucyfrowe etc...)?

3

Jak będzie tych stringów bardzo dużo to lepiej zrobić to w oparciu o klasę StringBuilder:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Threading;

namespace Sharp {
    class Program {
        static void Main(string[] args) {
            var lines = File.ReadAllLines("test.txt");
            var builder = new StringBuilder();

            for (int i = 0; i < lines.Length; i++) {
                builder.Append(lines[i].Substring(0, 5)).Append(' ').Append(lines[i].Substring(6, 14))
                    .Append(' ').Append(lines[i].Substring(19, 2)).Append(' ').Append(lines[i][lines[i].Length - 2])
                    .Append(' ').Append(lines[i][lines[i].Length - 1]);
                lines[i] = builder.ToString();
                builder.Clear();
                Console.WriteLine(lines[i]);
            }
        }
    }
}

Plik:

00012016031713145702010
17131457020000120160310
00713145702100012031201
00012016031713145702016

Każdą linijkę w pętli możesz splitować:

var split = lines[i].Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);

PS: Jeżeli przestawiłem gdzieś kolejność to sorry ale oczka już stare :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1