Java 修改元模型';s架构以更改/重命名列名
我使用Apache元模型来获取模式信息。有一个用例,我需要为没有头的csv文件创建Java 修改元模型';s架构以更改/重命名列名,java,apache-metamodel,Java,Apache Metamodel,我使用Apache元模型来获取模式信息。有一个用例,我需要为没有头的csv文件创建CsvDataContext对象。我在一个单独的数据结构中有列名(List colNames) 上下文对象给出的列名为“A”、“B”、“C”等。我猜metamodel为没有标题的表指定了一些默认列名 有没有办法修改CsvDataContext对象持有的模式 我相信UpdateableDataContext应该可以工作,但是文档中没有公开任何允许修改元数据(如列名)的方法 如何实现此方案?当您创建CsvDataCon
CsvDataContext
对象。我在一个单独的数据结构中有列名(List colNames
)
上下文
对象给出的列名为“A”、“B”、“C”等
。我猜metamodel为没有标题的表指定了一些默认列名
有没有办法修改CsvDataContext
对象持有的模式
我相信UpdateableDataContext
应该可以工作,但是文档中没有公开任何允许修改元数据(如列名)的方法
如何实现此方案?当您创建
CsvDataContext
时,请指定CsvConfiguration
。csv配置
中的一个选项是提供一个列命名策略
。默认策略实际上是使用字母字符、A
、B
、C
等。但您可以使用自定义命名策略,如下所示:
ColumnNamingStrategy columnNamingStrategy =
ColumnNamingStrategies.customNames("id", "foo", "bar", "baz");
CsvConfiguration configuration = new CsvConfiguration(
0, columnNamingStrategy, "UTF-8", ',', '"', '\\', true, false);
return new CsvDataContext(file, configuration);