gpt4 book ai didi

java - 如何使用java编辑、处理和保存FTL文件?

转载 作者:太空宇宙 更新时间:2023-11-04 13:50:40 26 4
gpt4 key购买 nike

我有一个代码可以解析 XML 文件,编辑它们并保存它们(使用 dom 来实现)。现在,我有一些扩展名为 .ftl 的文件。我已设法使用给定答案处理 ftl 文件(使用 freemarker 模板配置),但是,我无法将编辑后的 ​​xml 保存回 FTL。

所有这些都是用 Java 实现的。关于如何实现问题的节省方面有什么建议吗?

再次,我想用 Java 处理、编辑然后保存 FTL 文件。

我正在附加用于处理 ftl 文件的代码。

import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import com.google.gson.stream.JsonReader;

import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;

public class FTLReader {
public static void main(String[] args) {

//Freemarker configuration object
Configuration cfg = new Configuration();
try {
//Load template from source folder
Template template = cfg.getTemplate(filename);

// Build the data-model

Map<String,Object> data = new HashMap<String,Object>();
JsonParser parser = new JsonParser();

//write code to get answers
Object obj = parser.parse(new FileReader("src/answers.txt"));
JsonObject jsonObject = (JsonObject) obj;
data.put("element1", jsonObject.get("element1"));


// Console output
Writer out = new OutputStreamWriter(System.out);
template.process(data, out);
out.flush();

/*write code to edit and save the ftl file
*
*
*
*
* */

// File output (the processed FTL file)
Writer file = new FileWriter (new File("C:\\FTL_helloworld.txt"));
template.process(data, file);
file.flush();
file.close();

} catch (IOException e) {
e.printStackTrace();
} catch (TemplateException e) {
e.printStackTrace();
}
}
}

最佳答案

读了几次你的问题和评论后,我可能终于明白了你的目标。因此,您必须从代码开头“修补”filename 变量后面的文件 (Template template = cfg.getTemplate(filename);)。 FTL 文件基本上是一个文本文件,因此您可以逐行处理它。然后,您必须使用新文件内容重新初始化模板,即再次执行 template = cfg.getTemplate(filename);

关于java - 如何使用java编辑、处理和保存FTL文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30316895/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com