Github user xubo245 commented on a diff in the pull request: https://github.com/apache/carbondata/pull/2221#discussion_r184308365 --- Diff: store/sdk/src/test/java/org/apache/carbondata/sdk/file/CarbonReaderExample.java --- @@ -0,0 +1,80 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.carbondata.sdk.file; + +import java.io.File; +import java.io.FilenameFilter; +import java.util.List; + +import org.apache.commons.io.FileUtils; + +import org.apache.carbondata.core.metadata.datatype.DataTypes; +import org.apache.carbondata.core.metadata.schema.table.column.ColumnSchema; + +/** + * Example for testing CarbonReader + */ +public class CarbonReaderExample { + public static void main(String[] args) throws Exception { + String path = "./testWriteFiles"; + FileUtils.deleteDirectory(new File(path)); + + Field[] fields = new Field[2]; + fields[0] = new Field("name", DataTypes.STRING); + fields[1] = new Field("age", DataTypes.INT); + + CarbonWriterBuilder builder = CarbonWriter.builder() + .withSchema(new Schema(fields)) + .isTransactionalTable(true) + .outputPath(path).persistSchemaFile(true); + + CarbonWriter writer = builder.buildWriterForCSVInput(); + + for (int i = 0; i < 10; i++) { + writer.write(new String[]{"robot" + (i % 10), String.valueOf(i)}); + } + writer.close(); + + // Read schema in data file + File[] dataFiles = new File(path + "/Fact/Part0/Segment_null/").listFiles(new FilenameFilter() { + @Override + public boolean accept(File dir, String name) { + return name.endsWith("carbondata"); + } + }); + List<ColumnSchema> columns = CarbonReader.readSchemaInDataFile(dataFiles[0].getAbsolutePath()); + System.out.println("Schema:"); + for (int i = 0; i < columns.size(); i++) { + System.out.println(columns.get(i).getColumnName() + " " + columns.get(i).getDataType()); + } + + // Read data + CarbonReader reader = CarbonReader.builder(path, "_temp") --- End diff -- No
---