ตัวอย่างจาก Simon ไม่ได้ผลสำหรับฉันและฉันสงสัยว่ามันเป็นความแตกต่างทางภาษา ใน C # นี่คือสิ่งที่สตริงรูปแบบการทำงานของฉันดูเหมือนว่า:
var linebreak = (i++ == list.Count) ? "" : "\r\n";
csv += String.Format("=\"{0}\",{1},{2},{3},=\"{4}\"{5}",
item.Value, item.Status, item.NewStatus, item.Carrier, c.Status, linebreak);
และนี่คือลักษณะของไฟล์เอาต์พุต:
="abababababab",INVALID,INVALID,USPS,="",
="9500100030492359000149",UNKNOWNSTATUS,DELIVERED,USPS,="3"
="9500100030492359000149",UNKNOWNSTATUS,DELIVERED,USPS,="3"
="9500100030492359000149",UNKNOWNSTATUS,DELIVERED,USPS,="3"
="9500100030492359000149",UNKNOWNSTATUS,DELIVERED,USPS,="3"
="9400110200793482982812",UNKNOWNSTATUS,DELIVERED,USPS,="3"
="9400110200793482982812",UNKNOWNSTATUS,DELIVERED,USPS,="3"
="9400110200793000216184",UNKNOWNSTATUS,INVALID,USPS,=""
ตามที่เห็นรูปแบบในไฟล์ที่ส่งออก="VALUE",
ไม่ได้เป็น"=""VALUE""",
ที่ฉันเชื่อว่าอาจเป็นแบบแผนของ Visual Basic
ฉันใช้ Excel 2010 โดยบังเอิญ Google ชีตจะไม่เปิด / แปลงไฟล์ที่จัดรูปแบบด้วยวิธีนี้ มันจะทำงานถ้าคุณลบเครื่องหมายเท่ากับ"VALUE",
- Excel จะยังคงเปิดไฟล์ แต่ไม่สนใจข้อเท็จจริงที่ว่าคุณต้องการให้คอลัมน์ของคุณเป็นสตริง