string txtPath = Path.Combine(project.Directory, "файл с доступами.txt"); // Путь к файлу
string txtInfo = string.Join(Environment.NewLine, project.Variable["Login"].Value, project.Variable["Password"].Value); // Создаем строку
if (File.ReadAllLines(txtPath).Where(arg => !string.IsNullOrWhiteSpace(arg)).Count() < 1) File.AppendAllText(txtPath, txtInfo); // Записываем если файл пустой.
else File.AppendAllText(txtPath, Environment.NewLine + txtInfo); // Или дописываем в конец файла.
C#:string txtPath = Path.Combine(project.Directory, "файл с доступами.txt"); // Путь к файлу string txtInfo = string.Join(Environment.NewLine, project.Variable["Login"].Value, project.Variable["Password"].Value); // Создаем строку if (File.ReadAllLines(txtPath).Where(arg => !string.IsNullOrWhiteSpace(arg)).Count() < 1) File.AppendAllText(txtPath, txtInfo); // Записываем если файл пустой. else File.AppendAllText(txtPath, Environment.NewLine + txtInfo); // Или дописываем в конец файла.
На будущее, прикладывай скрин ошибки, я писал код по памяти, не проверял его в PM. Ошибка была в синтаксисе project.Variables.не получается и по первому скриншоту и по второму
string txtPath = @"C:\Users\Имя твоего пользователя\Desktop\Запись.txt"; // Путь к файлу
string txtInfo = string.Join(Environment.NewLine, project.Variables["Login"].Value, project.Variables["Password"].Value); // Создаем строку
if (File.ReadAllLines(txtPath).Where(arg => !string.IsNullOrWhiteSpace(arg)).Count() < 1) File.AppendAllText(txtPath, txtInfo); // Записываем если файл пустой.
else File.AppendAllText(txtPath, Environment.NewLine + txtInfo); // Или дописываем в конец файла.
Напиши код, чтобы нормально дописывало в конец файла, без проверки. Соответственно, у нас две ситуации, когда файл изначально пустой, и когда в файле уже есть строки и необходимо дописать в конец.убери проверку
Проверка необходима для корректности дописывания файла, в случае когда файл может быть изначально без строк. А такое часто практикуется, когда в многопотоке мы берем по кругу данные доступа или прокси, с дописыванием их в конец после обработки, соответственно получаем ситуацию, когда в файле могут заканчиваться строки и при возврате строки, необходимо предусмотреть отсутствие лишней создаваемой пустой строки.а для чего вообще проверка, не вижу чтобы ТС это просил, вы придумали на ходу пока ветер дул ??
File.AppendAllText(txtPath, txtInfo);
File.AppendAllText(txtPath, Environment.NewLine + txtInfo);
Вроде шаблоны не на калькуляторах запускают, чтобы это отражалось на ресурсах.чтобы меньше ресурсов жрало. убери проверку
а на это отвечу так, так для чего проверка ???Проверка необходима для корректности дописывания файла, в случае когда файл может быть изначально без строк. А такое часто практикуется, когда в многопотоке мы берем по кругу данные доступа или прокси, с дописыванием их в конец после обработки, соответственно получаем ситуацию, когда в файле могут заканчиваться строки и при возврате строки, необходимо предусмотреть отсутствие лишней создаваемой пустой строки.
C#:File.AppendAllText(txtPath, txtInfo); File.AppendAllText(txtPath, Environment.NewLine + txtInfo);
Вроде шаблоны не на калькуляторах запускают, чтобы это отражалось на ресурсах.
Сделал 1000 циклов записи файла, разница в 1 секунду.
Посмотреть вложение 50845
У тебя уже пошли запросы не имеющие отношения к текущему посту. Я тебе привел конкретный пример, что работа с проверкой, занимает на одну миллисекунду дольше. И для ТС, в работе его шаблона это не имеет никакого значения, особенно с точки зрения оптимизации и нагрузки.давай милиард в 100 потоков
File.AppendAllText(txtPath, txtInfo);
Login
PasswordLogin
PasswordLogin
PasswordLogin
PasswordLogin
Password
File.AppendAllText(txtPath, Environment.NewLine + txtInfo);
- пустая строка
Login
Password
Login
Password
Login
Password
Login
Password
Login
Password
а ктто такое просил ? вы иногда зарываетесь людиНапиши код, чтобы нормально дописывало в конец файла, без проверки. Соответственно, у нас две ситуации, когда файл изначально пустой, и когда в файле уже есть строки и необходимо дописать в конец.



