Od razu mówię, że za Ciebie tego nie zrobię Mam tylko kilka pytań:
Do czego Ci ten program?
Czy te 8-cyfrowe liczby obejmują też np. 00 000 001, 00 000 002, itd., czy też liczenie zaczyna się od 10 000 000 ? Inaczej rzecz ujmując … wszystkich liczb jest 90 mln (od 10 000 000 do 99 999 999) czy też 100 mln (od 00 000 001 do 99 999 999)?
Czy liczby mogą występować w mieszanej kombinacji, np. 10 000 000 [spacja] 33 333 333, czy też jeśli po jednej stronie spacji jest 10 000 000, to po drugiej stronie spacji też musi być 10 000 000 ?
W sytuacji, gdy interesuje Cię pierwszy przypadek, to ilość kombinacji jest astronomiczna. Zakładając, że interesuje Cię tylko 90 mln (zamiast 100 mln) liczb to będzie to 90 mln x 90 mln, czyli 81 x 10^14 możliwych kombinacji.
Tzn. się musisz napisać program. Samo się przecież nie zrobi Może to być aplikacja konsolowa (czyli taka uruchamiana z wiersza poleceń).
Jeśli będziesz miał od 10 000 000 do 90 000 000 liczb bez kombinacji, to w sumie powstanie Ci 80 000 001 linków, które w jednym pliku zajmą 3,73 GB (zakładając, że URL będzie miał w sumie 50 znaków).
W programie tworzysz zmienną i, której nadajesz wartość początkową. Następnie tworzysz pętlę, która wykona inkrementację x razy lub taką, która będzie powtarzać czynność, aż zmienna i osiągnie wymaganą wartość. A brakujące zera można dorobić na szybko w notepad++ używając opcji nagrywania czynności.
Myślę, że tyle zagnieżdżonych pętli, ile jest cyfr, a w ostatniej sklejenie wszystkich iteratorów w string i dodanie do tablicy, która co jakiś czas jest zapisywana do pliku i opróżniana.
A przeprowadzałeś jakieś testy? Moim zdaniem najbardziej spowalnia ciągłe otwieranie i zamykanie pliku (choć to strzał, bo trzeba by napisać kilka wersji aplikacji, żeby mieć pewność). Gdybym ja to robił to miałbym uchwyt do otwartego pliku i zapisywanie wykonywał na bieżąco (linijka po linijce).