2016-10-21 13 views
-3


私はPOIライブラリを介してExcelセルの値を読み取ることができますが、Excelファイルには新しい値のテキストボックス(図形)が含まれています。 説明などの大きなテキストはテキストボックス(図形)に入れられ、それらを読むために固執しています。
誰かがExcelコード(xlsx形式)から図形のテキストを読むためにjavaコードを教えてもらえますか?ご協力いただきありがとうございます。Excel(xlsx)からテキストボックスの値を読み取るためのJAI POIコード

+0

あなたはここにあなたのコードを貼り付け、あなたが取得しているか、エラー教えていただけます。 –

+0

あなたは「エクセルを読むことができます」。どうやって?使用しているライブラリがあるかどうかわからないときは、どうすれば私たちがあなたを助けてくれると思いますか? – Andreas

+0

ファイルを読み込むためのpoiコードを貼り付けてください.jxlをpoiよりはるかに簡単に使用することをお勧めします。制約は97-2003 xlsシートを使用することです。しかし、xlsxシートがあれば、それを動作させるためにvbsを使ってxlsに変換することができます –

答えて

0

ありがとうございました..私は解決策を見つけました。それはxlsxではなくxlsで機能しました。私はテキストボックス(図形)からテキストを読むことができます。

InputStream input = new FileInputStream("test.xls"); 
    POIFSFileSystem fs = new POIFSFileSystem(input); 

    HSSFWorkbook wb = new HSSFWorkbook(fs); 
    HSSFSheet sheet = wb.getSheetAt(0); 

    //get the patriarch 
    HSSFPatriarch pat = sheet.getDrawingPatriarch(); 

    HSSFClientAnchor a = new HSSFClientAnchor(0,0,10,50,(short)1,0,(short)1,0); 
    List child = pat.getChildren(); 
    String str; 
    int i=0; 
    Iterator iCount = child.iterator(); 
    while(iCount.hasNext()) { 
     HSSFShape shape = (HSSFShape)iCount.next(); 

     if (shape instanceof HSSFTextbox){ 
      HSSFTextbox textbox = (HSSFTextbox)shape; 
      HSSFRichTextString richString = textbox.getString(); 
      str = richString.getString(); 
      System.out.println("String: \n" + str); 
      System.out.println("String length: " + str.length()); 
     } 
     i++; 
     System.out.print("\n i =" +i); 
    } 

関連する問題