Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.57/21: Рейтинг темы: голосов - 21, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 23.08.2020
Сообщений: 47

Передача значения метода цикла в другой метод и возврат обратно в цикл

24.11.2020, 18:51. Показов 4830. Ответов 42
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день, есть практическая задача: осуществлять считывание большого (десятки млн строк) текстового файла, выполнять математические фиксированные операции над числами строки и записывать их в новый файл. Хочу для нормального оформления кода выводить отельные операции в отдельные методы и столкнулся с проблемой решения некоторых задач. Далее для простоты приведены примеры (несмотря на то что делается в WinForms, тут идут сугубо темы наследования переменных из метода-в-метод

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 private bool button5Click = false; //Ввод булева условия, нажата ли кнопка
    private void button5_Click(object sender, EventArgs e5) //Запуск преобразования облака точек
    {
      button5Click = true;
        }
    private void Read_And_Write_PTSFile(bool start, string CoordXYZ_2) //Запуск операции считывания файла и записи в новый
        {
      if (button5Click == true)
      {
        string DataPath = openFileDialog1.FileName;
        string[] Data = File.ReadAllLines(DataPath);
        //string DataStr = null;
        for (int i2 = 0; i2 < Data.Length; i2++)
        {
          string DataStr = Data[i2];
          using (StreamWriter SavePTSFile = new StreamWriter(saveFileDialog1.FileName, true, Encoding.UTF8))
          {
            SavePTSFile.WriteLine($"{CoordXYZ_2}");
            SavePTSFile.Close();
            SavePTSFile.Dispose();
 
          }
        }
      }
    }
А сама конструкция расчета упрощенно выглядит так:
C#
1
2
3
4
5
6
7
8
9
10
private string CalcCSTransform(string DataStr)
    {
      string[] DataStrValues = DataStr.Split(new char[] { ' ' });
      //Инициация исходных данных
      double CoordX = Convert.ToDouble(DataStrValues[0]);
      double CoordY = Convert.ToDouble(DataStrValues[1]);
      double CoordZ = Convert.ToDouble(DataStrValues[2]);
//Операции
      string CoordXYZ_2 = $"{CoordX_2},{CoordY_2},{CoordZ}";
      return CoordXYZ_2;
}
Вопрос собственно как осуществлять передачу строки
C#
1
DataStr = Data[i2];
из метода Read_And_Write_PTSFile в метод CalcCSTransform, ждать окончания формирования строки-ответа
C#
1
string CoordXYZ_2
и записывать ее в файл, после чего повторять по новой в рамках всего цикла for

P.S. Знаю что операции будут идти долго на 1 потоке, хочу начать вводить многопоточность - чтение/запись части файла в отдельные файлы и потом объединение итогового, а для этого (и вообще для саморазвития) - оформлять функции в отдельные методы
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.11.2020, 18:51
Ответы с готовыми решениями:

Передача двумерного массива из одного метода в другой метод
Привет Всем! Как тут принято писать: &quot; Java начал изучать не так давно&quot; :) Появился вопрос: как передать значения двумерного массива из...

Как передать входящее значение одного метода класса на возврат в другой метод того же класса?
Я самый новейший новичок. Помогите.Как передать входящее значение (количество еды) метода feed класса Cat на возврат(return) в метод...

Передача значения из цикла из одного потока в другой
В одном цикле крутится перменная $preset. В другом потоке тоже в цикле нужно прочитать её значение. Перемення объявлена с префиксом shared,...

42
548 / 355 / 120
Регистрация: 17.08.2014
Сообщений: 1,351
26.11.2020, 11:27
Студворк — интернет-сервис помощи студентам
А зачем все таки строки если там числа? Или я что то не понял?
0
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
26.11.2020, 17:26
может потому-что файл текстовый?
0
548 / 355 / 120
Регистрация: 17.08.2014
Сообщений: 1,351
29.11.2020, 18:02
Diamante, любой файл бинарный, то что после прочтения байтиков получается буква означает только то что из байтиков можно эту букву получить. Так что чтобы не городить огород со строками можно было сразу сделать что чтение, парсинг и обработку готовых данных с записью.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.11.2020, 18:02

Передача значения или параметра из одного метода в другой
Приветствую всех. Подскажите, как решить данную проблему. Мне нужно из метода CreateVector передать значение vector1 в метод ShowVector для...

Передача значения переменной из одного метода в другой и организация их параллельной работы
Здравствуйте. Есть две функции: function one() { var count=0; while(true) { count+=1; } }

Передача значения в другой метод
Друзья! Товарищи! Соратники! Застрял... :wall: Есть метод metod1: private void metod1() { ...

Передача переменной в функцию и возврат обратно
Доброго времени суток! По ходу выполнения скрипта, передаю переменную в функцию, делаю там необходимые манипуляции и через return возвращаю...

Цикл: есть ли какой-то метод вывода макс. и мин. значения цикла?
Здравствуйте, есть ли какой-то метод вывода макс. и мин. значения цикла?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
43
Ответ Создать тему
Новые блоги и статьи
Где деньги лежат
kumehtar 02.07.2026
Это - японская подводная лодка I-52 (тип C2, кодовое имя Momi) вышла из Японии в марте 1944 года с миссией в оккупированную немцами Францию (Лорьян). Это была одна из «Янаги»-миссий по обмену. . .
Krabik для WoW 3.3.5a, многоязычный
AmbA 02.07.2026
Допилил бота, думаю что окончательно. Изменения: - добавлена многоязычность - добавлено снятие скриншотов - добавлено поддержание бафов хождения по воде (для жреца, дк и шамана) - и так, по. . .
Алиса нашла кучу ошибок компиляции и запуска в проекте, который без проблем компилировался и запускался)))
anaschu 30.06.2026
Я пока посмеюся, но завтра проверю. А вообще интерсно. Дал алисе файл, в котором точно нет ошибок компиляции и запуска, и попросил их найти. Нашла кучу))) Критические ошибки, мешающие компиляции и. . .
сукцессия 16. Общий обзор, в основном что бы другие ии поняли
anaschu 29.06.2026
# Передаточный документ: модель микоризной сукцессии (для нового чата) Этот документ предназначен для того, чтобы новый чат Claude мог продолжить работу без необходимости заново разбираться в. . .
сукцессия 15 неявная схема
anaschu 29.06.2026
Алиса Калибровка параметров симбиотической модели: технический обзор Содержание: Введение Постановка проблемы Технические аспекты реализации Процесс внедрения изменений
сукцессия 14. Обновленная схема модели
anaschu 28.06.2026
ГЛОБАЛЬНАЯ ОПИСАТЕЛЬНАЯ СПЕЦИФИКАЦИЯ ЭКОСИСТЕМНОЙ МОДЕЛИ «SOIL CHEMISTRY & MYCORRHIZA 2. 0» https:/ / ibb. co/ NnkGpfMd Представленная интегрированная схема описывает непрерывную нелинейную. . .
сукцессия 13. Питон модель трехзонного мицелия, пока что в основном арбускулярного
anaschu 28.06.2026
## Разработка агентной модели микоризной сукцессии: от выявления артефактов к созданию комплексной системы ### Аннотация Представлено исследование по разработке агентной модели микоризной. . .
сукцессия 12. краткий список проверок модели перед запуском.
anaschu 27.06.2026
Скрытые отказы в моделях систем динамики (SD-models) экологических систем: два случая из практики Контекст Разбирался прототип модели систем динамики (SD-модели) микоризной сукцессии: пять. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru