2017-01-19 12 views
1

Sample Data次のデータのキー値ペアをマップしますか?

私は、次のExcelシートを持っていると私はキーと値のペアの地図にバインドします。(データを解析するJXLを使用した) 私は、データ構造が

Map<String,Map<String, List<String>>> map 

のようになりたいですここでキーはステージリクエストセットになり、ステージreqとステージseqのマップがあります。

私は、マップ内のI地図を行うことができた:電子Map<String, List<String>>一部

それが特定のキーの値になりますマップにマップを追加する方法。

   for(int i = 3;i<sheet.getRows();i++){    
         if(!sheet.getCell(2,i).getContents().isEmpty()){ 
          lastUpdated = sheet.getCell(2,i).getContents();       
         } 

         if (!sheet.getCell(3,i).getContents().isEmpty()) { 
          String content = sheet.getCell(3,i).getContents(); 
          if (map.containsKey(lastUpdated)) { 
           map.get(lastUpdated).add(content); 
          } else { 
           ArrayList<String> temp = new ArrayList<String>(); 
           temp.add(content); 
           map.put(lastUpdated, temp); 
          } 
         } 

        } 

これは私たちに、キーと値のペアのすべての段階の値とその配列が含まれている地図で、ステージ全体のREQとステージ配列を与えるだろう。

ここで、このマップをステージリクエストにバインドする方法を設定する名前キーを設定します。

Javaが新しくて、コレクションが手助けしてください。

答えて

0

私はあなたが必要としていると考えています。十分でない場合は、すべてのクラウドストレージと完全なソースコードを使用して、完全なExcelシートをファイルとして共有してください。

 Map<String, Map<String, List<String>>> map = new HashMap<>(); 
     for(int i = 3;i<sheet.getRows();i++){ 
      if(!sheet.getCell(2,i).getContents().isEmpty()){ 
       lastUpdated = sheet.getCell(2,i).getContents(); 
      } 

      if (!sheet.getCell(3,i).getContents().isEmpty()) { 
       String content = sheet.getCell(3,i).getContents(); 
       if(!map.containsKey(lastUpdated)){ 
        map.put(lastUpdated, new HashMap<>()); 
       } 
       if(!map.get(lastUpdated).containsKey(content)){ 
        Map<String, List<String>> rowMap = map.get(lastUpdated); 
        rowMap.put(content, new ArrayList<>()); 
        map.put(lastUpdated, rowMap); 
       } 
       for(Cell c : Arrays.copyOfRange(sheet.getRow(i), 4, sheet.getRow(i).length)){ 
        if(CellType.EMPTY != c.getType()){ 
         map.get(lastUpdated).get(content).add(c.getContents()); 
        } 
       } 
      } 
     } 
+0

こんにちは@Pavanおかげで、私はuがExcelシートのサンプルを参照してください、私は地図<文字列、地図<文字列、リスト >>マップを使用していた理由として、サンプルExcelシートに一列内のデータを、私を更新しました私はそれらを保存するためにリストを使用しました。 – pwndyp

関連する問題