Home

Util.WriteCsv: useInvariantCulture seems broken

Hello

it seems to me that the useInvariantCulture parameter of Util.WriteCsv is broken in the current beta (v5.34.02).

On my german comuter, I see the following result:
True,"888,296064298159",561 True,"889,756064630635",661

Please note that "888,296064298159" is a double. The resulting file does not change when I set useInvariantCulture to true like in Util.WriteCsv(results, csvPath, true).

Can anyone else reproduce this issue?

Greetings
Peter

Comments

  • Hello

    I have found the cause of the problem using ILSpy:

    public static void WriteCsv<T>(IEnumerable<T> elements, string filePath, bool useInvariantCulture, params string[] membersToInclude) { UTF8Encoding encoding = new UTF8Encoding(encoderShouldEmitUTF8Identifier: true, throwOnInvalidBytes: false); using (StreamWriter writer = new StreamWriter(filePath, append: false, encoding)) { WriteCsv(elements, writer, membersToInclude); } }

    WriteCsv should pass on the useInvariantCulture.
  • Thanks. I'm pretty sure the fix made it into the latest beta - let me know if it's still a problem.
Sign In or Register to comment.