谷歌应用程序脚本电子表格字符串检索问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了谷歌应用程序脚本电子表格字符串检索问题相关的知识,希望对你有一定的参考价值。

我无法弄清楚为什么以下代码在特殊字符的情况下无法正常工作:

[...]
// get strings (names) from spreadsheet
var persons = SpreadsheetApp.getActiveSheet().getRange(2, 1, 31, 4).getValues();

// for each row
for (var row in persons) {

    // build the filename
    var myFile = persons[row][1] + "_" + persons[row][0] + "_20180124.txt";

    [...]

    // handle from Google Drive only file             
    var driveFiles = DriveApp.getFilesByName(myFile);
    while (driveFiles.hasNext()) {
        var file = driveFiles.next();

        if(driveFiles.getName() == myFile) {

            /* write to Log

            Saša_KLANJŠČEK_20180124.txt     not written
            Peter_MARINČIČ_20180124.txt     not written
            Peter_KLANJŠČEK_20180124.txt    not written
            Niko_ČERNIC_20180124.txt        not written
            Tjaša_KOGOJ_20180124.txt        written
            */

            Logger.log(myFile + "
");

        [...]

具有大写unicode字符的字符串会导致条件语句失败。我尝试使用toString(“UTF-8”)方法,但它仍然无法正常工作。这是编码问题吗?

答案

更改:

if(driveFiles.getName() == myFile) {

 if(file.getName() == myFile) {

以上是关于谷歌应用程序脚本电子表格字符串检索问题的主要内容,如果未能解决你的问题,请参考以下文章

谷歌脚本从电子表格中获取 json 数据

用于将数据从谷歌电子表格加载到 bigquery 的独立脚本

如何从公共谷歌电子表格中检索简单的xml

谷歌应用程序脚本在第一次运行时授予用户权限访问电子表格上的服务,而无需打开脚本编辑器

如何在电子表格中的日历谷歌中获得执行操作的权限

插入新行时在谷歌电子表格上触发脚本