TurtleDB
A mini distributed database system
|
00001 /*------------------------------------------------------------------------- 00002 Simple distributed database engine 00003 Copyright (C) 2012 Sylvain Hallé 00004 00005 This program is free software: you can redistribute it and/or modify 00006 it under the terms of the GNU General Public License as published by 00007 the Free Software Foundation, either version 3 of the License, or 00008 (at your option) any later version. 00009 00010 This program is distributed in the hope that it will be useful, 00011 but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 GNU General Public License for more details. 00014 00015 You should have received a copy of the GNU General Public License 00016 along with this program. If not, see <http://www.gnu.org/licenses/>. 00017 -------------------------------------------------------------------------*/ 00018 package ca.uqac.dim.turtledb; 00019 00025 public class TableParser 00026 { 00042 public static Table parseFromCsv(String name, String s) 00043 { 00044 Table out = new Table(name); 00045 Schema sch = null; 00046 String[] lines = s.split("\n"); 00047 boolean first_line = true; 00048 for (String line : lines) 00049 { 00050 line = line.trim(); 00051 if (line.startsWith("#") || line.startsWith("---")) 00052 continue; 00053 if (first_line) 00054 { 00055 first_line = false; 00056 sch = new Schema(name, line); 00057 out.setSchema(sch); 00058 continue; 00059 } 00060 Tuple t = new Tuple(sch, line); 00061 out.put(t); 00062 } 00063 out.setName(name); 00064 return out; 00065 } 00066 }