Различие между путем к классу и подтвержденным каталогом

Вы не совсем нуждаетесь в классе Flds для этой цели. Поскольку поле Done является последней строкой, вы можете проанализировать totalAcc и добавить его в конец строки при анализе файла. Например,

var data = File.ReadAllText(intputFileName);
var list = data.Split(new[]{Environment.NewLine},StringSplitOptions.RemoveEmptyEntries);
StringBuilder strBuilder = new StringBuilder($"{list.First()}{Environment.NewLine}");

foreach(var line in list.Skip(1))
{
        var totalAcc = line.Split(new[]{"|"},StringSplitOptions.RemoveEmptyEntries)[2];
        strBuilder.AppendLine($"{line}{totalAcc}");
}

File.WriteAllText(outputFileName,strBuilder.ToString());

Выход

|Date    |Name  |TotalAcc|Folder|Done
|20190105|LHN888|1       |5     |1       
|20190105|RLM916|2       |5     |2       
|20190105|TDE374|1       |5     |1       
16
задан Julien Chastang 5 May 2010 в 22:14
поделиться

1 ответ

Tecnically Вы, probaly может сделать это, но различие - то, что файлы банки в подтвержденном каталоге загружаются начальной загрузкой classloader, который является, вероятно, не тем же classloader как тот, который загружает Ваши банки из пути к классу.

Существует классическая проблема XML с Xerce и реализациями Xalan XML, которые отсутствуют в подтвержденном каталоге. Поскольку более новые приложения иногда требуют более новых версий обеих библиотек, и классы имеют те же имена, существует проблема пути к классу.

Можно заменить библиотеки Xerces и Xalan в подтвержденном dir (скопируйте старые!), но это может возможно завинтить другие приложения, которые используют ту же установку JRE.

Я даже видел эту проблему в рамках 1 приложения, где одна библиотека зависит от одной версии, и другая библиотека зависит от другой версии xerces. Очень неприятный, и нет никакого "общего подхода" к этому или по крайней мере ни одному, что я нашел.

Существуют некоторые интересные статьи, легко найденные Google на этом, пытаются найти то который лучшие соответствия Ваша ситуация или проблема.

25
ответ дан 30 November 2019 в 21:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: