diff --git a/VectoCore/VectoCore/Utils/VectoCSVFile.cs b/VectoCore/VectoCore/Utils/VectoCSVFile.cs index 72ad52041301e8e2e387014c0b517774a0383ec7..6d5f9469e856a2846f3db1daa460ae9f29c54269 100644 --- a/VectoCore/VectoCore/Utils/VectoCSVFile.cs +++ b/VectoCore/VectoCore/Utils/VectoCSVFile.cs @@ -222,10 +222,19 @@ namespace TUGraz.VectoCore.Utils var items = row.ItemArray; var formattedList = new string[items.Length]; for (var i = 0; i < items.Length; i++) { - var si = items[i] as SI; - formattedList[i] = si != null - ? columnFormatter[i](si) - : formattedList[i] = string.Format(CultureInfo.InvariantCulture, "{0}", items[i]); + + if (items[i] is SI) { + formattedList[i] = columnFormatter[i]((SI)items[i]); + //} + //else if (items[i] is ConvertedSI) + //{ + // // todo mk-2017-10-02: maybe we also have to use decimals and showUnit from columnFormatter here? + // formattedList[i] = items[i].ToString(); + } else { + formattedList[i] = string.Format(CultureInfo.InvariantCulture, "{0}", items[i]); + } + + // if a string contains a "," then it has to be contained in quotes in order to be correctly recognized in a CSV file. if (formattedList[i].Contains(Delimiter)) { formattedList[i] = string.Format("\"{0}\"", formattedList[i]); }