Как получить доступ к конкретному столбцу файла CSV?Если в этом столбце пуста ячейка, вообще не пишите строки в CSV-файле. - PullRequest
0 голосов
/ 21 октября 2018

Краткое резюме работы.У меня была папка с файлами XML.Я распаковал его, отправьте в другую папку назначения.Для всех XML-файлов в папке.Мне нужно было получить имя файла, xpath, значение конкретного элемента.Я сделал все это.

Что мне нужно сделать, это получить доступ к определенному столбцу в файле CSV (столбец метки), проверить, если какая-либо ячейка пуста, если она пуста, я не хочу писатьвся строка вообще в файле csv.Надеюсь, я достаточно ясно Это отличная / Java работа

public void getAllFiles(String fileName) {

    //create csv file in a variable and hold all files in a single variable as well

    def xmlFile = new XmlSlurper().parse(new File(fileName))

    def csvFile = new File("C:\\Users\\username\\Desktop\\test1.csv")

    def labels = xmlFile.breadthFirst().findAll {

        if (it.name() == 'element1') {
             println it
            println it.attributes().get("attribute")
            println getXPath(it)

            def langs = it.attributes().get("attribute")
            def description = it.parent().parent().children().find { node -> node.name() == 'message' }.text().toString()
            def xmlFile2 = new File(fileName)

            csvFile.append('"' + xmlFile2.getName() + '"' + "," + '"' + getXPath(it) + '"' + "," + '"' + description + '"' + "," + '"' + langs + '"' + "," + '"' + it + '"' + "\r\n")
        }
    }
}


def list = []
def ant = new AntBuilder()

ant.unzip(src: "zipfolderpath.zip", dest: "path_to_folder",
overwrite: "false")
def dir = new File("Path_to_folder")
def csvFile = new File("C:\\Users\\username\\Desktop\\test1.csv")
def valueA = "XPATH"
def valueE = "FILENAME"
def valueD = "DESCRIPTION"
def valueB = "LANGUAGE"
def valueC = "LABELS"

csvFile.write("\r\n" + valueE + "," + valueA + "," + valueD + "," + valueB + "," + valueC + "\r\n")
dir.eachFileRecurse(FileType.FILES) { file -> 
    if (file.getName().endsWith("xml")) {
        extractFileName(file.absolutePath)
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...