J Jeka124 Client Регистрация 19.09.2020 Сообщения 122 Благодарностей 3 Баллы 18 27.11.2021 #1 Есть список почти 10 гб, оперативной памяти всего 16 гб, никак не могу разбить список так как не хватает оперативки, зенка виснет, пытался через EmEditor но он тоже вылетает. Есть какие либо идеи как это сделать?
Есть список почти 10 гб, оперативной памяти всего 16 гб, никак не могу разбить список так как не хватает оперативки, зенка виснет, пытался через EmEditor но он тоже вылетает. Есть какие либо идеи как это сделать?
deskuznetsov Client Регистрация 29.08.2019 Сообщения 528 Благодарностей 363 Баллы 63 28.11.2021 #2 C#: var list = new List<string>(); var fileSuffix = 0; using (var file = File.OpenRead(project.Variables["put_big_txt_file"].Value)) using (var reader = new StreamReader(file)) { while (!reader.EndOfStream) { list.Add(reader.ReadLine()); if (list.Count >= 3000000) { File.WriteAllLines(project.Variables["folder"].Value + @"\split" + (++fileSuffix) + ".txt", list); //File.WriteAllLines(project.Directory + @"\split\split" + (++fileSuffix) + ".txt", list); list = new List<string>(); } } } File.WriteAllLines(project.Variables["folder"].Value + @"\split" + (++fileSuffix) + ".txt", list); Этот код разбивает один большой txt на много маленьких. if (list.Count >= 3000000) - поиграйся с настройкой, подбери нужного тебе размера Реакции: Jeka124
C#: var list = new List<string>(); var fileSuffix = 0; using (var file = File.OpenRead(project.Variables["put_big_txt_file"].Value)) using (var reader = new StreamReader(file)) { while (!reader.EndOfStream) { list.Add(reader.ReadLine()); if (list.Count >= 3000000) { File.WriteAllLines(project.Variables["folder"].Value + @"\split" + (++fileSuffix) + ".txt", list); //File.WriteAllLines(project.Directory + @"\split\split" + (++fileSuffix) + ".txt", list); list = new List<string>(); } } } File.WriteAllLines(project.Variables["folder"].Value + @"\split" + (++fileSuffix) + ".txt", list); Этот код разбивает один большой txt на много маленьких. if (list.Count >= 3000000) - поиграйся с настройкой, подбери нужного тебе размера