如何防止以角度分割逗号分隔的字符串? [英] How to prevent split comma separated string in angular?

查看:118
本文介绍了如何防止以角度分割逗号分隔的字符串?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

您好,

我正在尝试使用angular导出csv。

我的数组是 -

140 abc(address1)

xyz,delhi(地址2)

我的实际地址是140 abc,xyz,delhi(地址1,地址2)

结果 -

store_id | Store_Name |地址| Pincode |地标|状态

1 | abc | 140 abc | xyz | delhi | 10001 | xxx | sss



结果显示错误。

请帮助我如何显示正确的结果。



先谢谢。

Ankit Agarwal

软件工程师



我尝试过:



Hello,
I am trying to export csv using angular.
my array is-
140 abc (address1)
xyz, delhi (address2)
my actual address is "140 abc, xyz, delhi" (address1,address2)
result-
store_id|Store_Name|Address|Pincode|Landmark|Status
1|abc|140 abc|xyz|delhi|10001|xxx|sss

result is displaying wrong.
please help me how will be display correct result.

Thanks in Advance.
Ankit Agarwal
Software Engineer

What I have tried:

ConvertToCSV(objArray) {
    //var arr=['store_id','store_name','address1','address2','pincode','landmark','status_text']
    const newArray = objArray.map(o => {
      return { store_id: o.store_id, store_name: o.store_name, address: o.address1 +" "+ o.address2, pincode: o.pincode,landmark: o.landmark,status: o.status_text };
    });
    
    var array = typeof newArray != 'object' ? JSON.parse(newArray) : newArray;
    var str = '';
    var row = '';

   
    for (var index in newArray[0]) {
        //Now convert each value to string and comma-separated
        row += index + ',';
        
    }
    row = row.slice(0, -1);
    //append Label row with line break
    str += row + '\r\n';

    for (var i = 0; i < array.length; i++) {
      
        var line = '';
        for (var index in array[i]) {
            if (line != '') line += ','
            line += array[i][index];
        }
        str += line + '\r\n';
    }
    return str;
}

推荐答案

如果要将逗号保留为任何CSV文件中字符串的一部分,则必须分隔带双引号的整个字符串列。事实上,总是在CSV文件中的任何字符串周围使用双引号是个好主意:

If you want to keep commas as part of a string in any CSV file, you have to delimit the whole string column with double quotes. In fact, it's a good idea to always use double quotes around any string in a CSV file:
1,"abc","140 abc,xyz,delhi",10001,"xxx","sss"

要在双引号字符串中包含双引号,请将它们加倍:

To include double quotes in a double quoted string, double them:

1,"abc","140 abc,""xyz"",delhi",10001,"xxx","sss"

会给你这些专栏:

Will give you these columns:

1
abc
140 abc,"xyz",delhi
10001
xxx
sss


这篇关于如何防止以角度分割逗号分隔的字符串?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆