package com.galaxygoby; import java.lang.* ; import java.io.* ; import java.util.* ; import com.galaxygoby.* ; public class TestShmStTbl { TestShmStTbl() { } public int checkParameter ( String args[] ) { if ( args.length == 1 ) { return ( 0 ) ; } else { System.out.println ( "Usage : TestShmStTbl [パラメータファイル名]") ; return ( -1 ) ; } } public int execShmStaticTable ( String[] args ) throws IOException { BufferedReader br = null ; PrintWriter p0_pw = null ; String p1_Table , p2_Id ; String line ; String[] param ; try { br = new BufferedReader( new InputStreamReader( new FileInputStream( args[0] ))) ; } catch ( IOException e ) { System.out.println ( "Usage : TestShmStTbl [パラメータファイル名]") ; System.out.println ( " パラメータファイルがありません") ; return (-1) ; } Map in = new HashMap() ; Map out = new HashMap() ; for ( ;(line = br.readLine()) != null ; ) { param = line.split(",") ; if ( param.length < 3 ) { System.out.println ( "× " + line ) ; continue ; } try { p0_pw = new PrintWriter ( new OutputStreamWriter ( new FileOutputStream ( param[0] ))) ; } catch ( IOException e ) { System.out.println ( " パラメータファイルがありません") ; continue ; } p1_Table = param[1] ; p2_Id = param[2] ; in.clear() ; int i ; for ( i=3 ; i keyArray = new ArrayList() ; String tb = "" ; for (String key : out.keySet()) { keyArray.add ( key ) ; p0_pw.print ( tb + key ) ; tb = "\t" ; } p0_pw.print ( "\n" ) ; String[][] outHyou = new String [ keyArray.size() ][ out.get(keyArray.get(0)).length ] ; // System.out.println ( "keyArray.size()=" + keyArray.size() // + " out.get(keyArray.get(0)).length=" + out.get(keyArray.get(0)).length ) ; for ( i = 0 ; i < keyArray.size() ; i ++ ) { String[] outTemp = out.get ( keyArray.get(i) ) ; for ( int j = 0 ; j < out.get ( keyArray.get(i) ).length ; j++ ) { outHyou [i] [j] = outTemp[j] ; } } for ( int j = 0 ; j < outHyou[0].length ; j++ ) { tb = "" ; for ( i = 0 ; i < keyArray.size() ; i++ ) { p0_pw.print ( tb + outHyou[i][j] ) ; tb = "\t" ; } p0_pw.print ( "\n" ) ; } p0_pw.close() ; } return ( 0 ) ; } public static void main ( String args[] ) throws Exception { TestShmStTbl testSST = new TestShmStTbl() ; int rc0 = testSST.checkParameter ( args ) ; if ( rc0 != 0 ) System.exit ( rc0 ) ; int rc1 = testSST.execShmStaticTable ( args ) ; } }