Using this CSV file:
20,"ABCDefg",1
20,"abcdEFG",1
1,"NUMBER1",20
1,"nuMber1",20
1,"NUMBER1",21
2,"NUMBER1",20
40,"last element",1
39,"SECond",1
14,"MIDdle",500
14,"middle",500
12,"abcdefghijklmnopqrstuvwxyz",1
12,"abcdefghijklmnopqrstuvwxyz",2
12,"abcdefghijklmnopqrstuvwxyz",10
16,"A10",1
16,"10",1
16,"B10",1
16,"10B",1
16,"a10",1
17,"1111111111",6
17,"1222222222",6
Your code truncates one item in append mode and notice the first item is incorrect. 1,"NUMBER1",20 should be first rather than 1,"NUMBER1",21.
1,"NUMBER1",21
1,"NUMBER1",20
1,"nuMber1",20
2,"NUMBER1",20
12,"abcdefghijklmnopqrstuvwxyz",10
12,"abcdefghijklmnopqrstuvwxyz",2
12,"abcdefghijklmnopqrstuvwxyz",1
14,"MIDdle",500
14,"middle",500
16,"10",1
16,"A10",1
16,"10B",1
16,"B10",1
16,"a10",1
17,"1111111111",6
17,"1222222222",6
20,"ABCDefg",1
20,"abcdEFG",1
39,"SECond",1
40,"last element",1
It should be
1,"NUMBER1",20
1,"NUMBER1",21
1,"nuMber1",20
2,"NUMBER1",20
12,"abcdefghijklmnopqrstuvwxyz",1
12,"abcdefghijklmnopqrstuvwxyz",2
12,"abcdefghijklmnopqrstuvwxyz",10
14,"MIDdle",500
14,"middle",500
16,"10",1
16,"10B",1
16,"A10",1
16,"B10",1
16,"a10",1
17,"1111111111",6
17,"1222222222",6
20,"ABCDefg",1
20,"abcdEFG",1
39,"SECond",1
40,"last element",1