Удалить строковое значение в файле CSV с помощью C#C#

Место общения программистов C#
Ответить
Anonymous
 Удалить строковое значение в файле CSV с помощью C#

Сообщение Anonymous »

Я удалил свой предыдущий пост в надежде, что этот будет лучше и понятнее, и я смогу получить помощь. Я ценю это.
Пока что с помощью моего кода я загружаю файл CSV, чтобы отформатировать его следующим образом: я пропустил заголовки, а также вместо разделителя-запятой добавил разделитель конвейера | и удалите следующее значение: «.\MEMBERRECORDS_SIGNATURECARD_00000000_00000000_0001» во всех строках/строках при создании нового файла CSV.
Проблема, которую я не могу решить, заключается в загрузке нового файла CSV. , значение, которое мне нужно удалить: ".\MEMBERRECORDS_SIGNATURECARD_00000000_00000000_0001" . Последнее число: _0001" увеличивается на единицу в каждом CSV-файле, который я загружаю в форматируемый файл.
Мне нужна помощь, как удалить все строковое значение, включая приращение последнего значения:
".\MEMBERRECORDS_SIGNATURECARD_00000000_00000000_0001" . Последнее число: _0001"
".\MEMBERRECORDS_SIGNATURECARD_00000000_00000000_0001" . Последний номер: _0002"
".\MEMBERRECORDS_SIGNATURECARD_00000000_00000000_0001" . Последний номер: _0003"
".\MEMBERRECORDS_SIGNATURECARD_00000000_00000000_0001" . Последнее число: _0004"
Это мой код:
Спасибо
private void button2_Click(object sender, EventArgs e)
{
try
{
if (String.IsNullOrEmpty(FromFile))
{
lblStatus.Text = "Missing CSV Information";
Application.DoEvents();
MessageBox.Show("Please select CSV file first.");
return;
}

if (String.IsNullOrEmpty(ToFile))
{
lblStatus.Text = "Missing Save Information";
Application.DoEvents();
MessageBox.Show("Please enter save information.");
return;
}
else if (File.Exists(ToFile))
{
// delete old file
File.Delete(ToFile);
}

btnProcess.Enabled = false;
lblStatus.Text = "Processing...";
Application.DoEvents();

var lines = File.ReadAllLines(FromFile).Skip(1);
string docId = "";
string[] oldLine = null;

foreach (var line in lines)
{
var newLine = line.Replace("\"", "").Replace(".\\", "").Replace("\\", "").Replace("MEMBERRECORDS_SIGNATURECARD_00000000_00000000_0001", "").Split(',');

if (docId != newLine[0])
{
docId = newLine[0];
oldLine = newLine;
}
else
{
for (int i = COPY_FROM - 1; i < newLine.Length; i++)
newLine = oldLine;
}

using (StreamWriter sr = new StreamWriter(ToFile, true))
{
sr.WriteLine(string.Join("|", newLine));
}
}

btnProcess.Enabled = true;
lblStatus.Text = "Completed";
Application.DoEvents();
}
catch (Exception ex)
{
MessageBox.Show("Error! Ex: " + ex.Message);
}
}`


Подробнее здесь: https://stackoverflow.com/questions/785 ... th-c-sharp
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»