[
¥È¥Ã¥×
] [
¿·µ¬
|
°ìÍ÷
|
ñ¸ì¸¡º÷
|
ºÇ½ª¹¹¿·
|
¥Ø¥ë¥×
]
³«»Ï¹Ô:
[[¥Î¡¼¥È>¥Î¡¼¥È/¥Î¡¼¥È]]
*Java¤«¤éExcel¥Õ¥¡¥¤¥ë¤ò¤¤¤¸¤ëApache POI [#e50a3c01]
¥Ý¥¤¥ó¥È¡§
-Java¤Î¥Ñ¥Ã¥±¡¼¥¸POI¤Ç¡¢Excel¤Î¥Õ¥¡¥¤¥ë ***.xlsx ¤òÁàºî¤Ç¤¤ë~
POI¤ÏMicrosoft¤ÎOffice¥É¥¥å¥á¥ó¥È¡ÊWord, Excel, ...¡Ë¤òÁàºî¤Ç¤¤ë¥é¥¤¥Ö¥é¥ê¤Ç¡¢º£»È¤¦¤Î¤ÏExcel¤ÎÉôʬ¤À¤±¡£
-Âоݤϡ¢Office2007°Ê¹ß¤Ç»È¤ï¤ì¤Æ¤¤¤ëxlsx¥Õ¥¡¥¤¥ë¤Î¤ß¡£¸Å¤¤xls¥Õ¥¡¥¤¥ë¤ÏÂоݳ°¡£~
¸Å¤¤xls¥Õ¥¡¥¤¥ë¤Î¾ì¹ç¡¢Â¿¾¯API¤Î»È¤¤Êý¤¬°ã¤¦¤é¤·¤¤¤Î¤Ç¡¢·ë¹½º®Íð¤Î¸µ¤Î¤è¤¦¤Êµ¤¤¬¤¹¤ë¡£
-API¥É¥¥å¥á¥ó¥È¤Ï¤À´°È÷¤·¤Æ¤¤¤ë¤¬¡¢»²¹Í¥Ú¡¼¥¸¤Ï¾¯¤Ê¤¤
»²¾È¥Ú¡¼¥¸
-[[POI¥×¥í¥¸¥§¥¯¥È¤Î¥È¥Ã¥×¥Ú¡¼¥¸:http://poi.apache.org/index.html]]
-[[POI-HSSF and POI-XSSF - Java API To Access Microsoft Excel Format Files:http://poi.apache.org/spreadsheet/index.html]]
-[[Busy Developers' Guide to HSSF and XSSF Features:http://poi.apache.org/spreadsheet/quick-guide.html]]
-[[API¥É¥¥å¥á¥ó¥È:http://poi.apache.org/apidocs/index.html]]
¥µ¥ó¥×¥ë¤ò´Þ¤à¥Ú¡¼¥¸
-[[Java¤Çexcel¥Õ¥¡¥¤¥ë(.xlsx)¤òÆÉ¤à¡§POI¥µ¥ó¥×¥ë:http://k-hiura.cocolog-nifty.com/blog/2012/09/javaexcelxlsxpo.html]]
-[[PoiBuilder ¤Ç Quick Guide (10) ¡§ ¿§¤Î¥«¥¹¥¿¥Þ¥¤¥º:http://waman.hatenablog.com/entry/20110707/1310059776]]
-[[Read / Write Excel File In Java Using Apache POI:http://viralpatel.net/blogs/java-read-write-excel-file-apache-poi/]]
-[[Reading/writing excel files in java : POI tutorial:http://howtodoinjava.com/2013/06/19/readingwriting-excel-files-in-java-poi-tutorial/]]
-[[Java¤ÈApache POI¤ò»È¤Ã¤ÆExcel¤Ç¤¦¤µ¤®´Ñ»¡Æüµ¤òºî¤í¤¦:http://itpro.nikkeibp.co.jp/article/COLUMN/20110405/359101/]]
-[[Á°·Ê¿§¤ÈÇØ·Ê¿§:http://www.javadrive.jp/poi/style/index2.html]]
**¥¤¥ó¥¹¥È¡¼¥ë [#r29db558]
¥Ñ¥Ã¥±¡¼¥¸¤ò¥À¥¦¥ó¥í¡¼¥É¡¦²òÅष¡¢¥¯¥é¥¹¥Ñ¥¹¤ÎÄ̤äƤ¤¤ë¥Ç¥£¥ì¥¯¥È¥ê¤ØÃÖ¤¯
-[[Apache POI 3.6¤Î¥¤¥ó¥¹¥È¡¼¥ë:http://www.javadrive.jp/poi/install/index2.html]]
ÌÌÅݤʤΤǡ¢/usr/share/java/¤Î²¼¤ËÃÖ¤¤¤¿¡£
**»È¤¤Êý¤Î¥µ¥ó¥×¥ë [#f9c7c85d]
Ãí¡§ UTF-8¤Ç´Á»ú¤â£Ï£Ë¤À¤Ã¤¿¡£
¾åµ¤Î¥Ö¥í¥°¤Ë¤â¥µ¥ó¥×¥ë¤¬¤¢¤ë¡£
Excel¥Õ¥¡¥¤¥ë¤Î¿·¤·¤¤¡Ê2007°Ê¹ß¡©¡Ë.xlsx¤Î¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¤Ï¡¢¥é¥¤¥Ö¥é¥êXSSF¤ò»È¤¦¡£
¸Å¤¤.xls¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¤ÏHSSF¤ò»È¤¦¡£°ì½ï¤Ë¡Êº®¤¼¤Æ¡ËÂбþ¤Ï¤Ç¤¤ë¤Î¤«¤ÏÉÔÌÀ¡£¤³¤³¤Ç¤Ï¡¢XSSF¤Î¤ßÂбþ¡£
***Îã¡¡¥Õ¥¡¥¤¥ë¤òÆÉ¤ó¤Ç¡¢¥»¥ë¤ò¼è¤ê½Ð¤·¤¿¤ê¡¢½ñ¤¹þ¤ó¤À¤ê¡¢²Ã¹©¤·¤¿¤ê¤¹¤ë [#v36d38a8]
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.awt.Color;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFCellStyle;
import org.apache.poi.xssf.usermodel.XSSFColor;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class ReadWriteSample {
public static void main(String[] args) throws Exception {
FileInputStream is = new FileInputStream("/home/yamanouc/src/poi/cali/bunshi.xlsx"); // ¥Õ¥¡¥¤¥ëÆÉ¤ß¹þ¤ß
XSSFWorkbook wb = new XSSFWorkbook(is); // ¥ï¡¼¥¯¥Ö¥Ã¥¯¤Ë¼è¤ê¹þ¤à
XSSFSheet sheet = wb.getSheetAt(0); // ¥·¡¼¥È£°ÈÖ¤ò¼è¤ê¤À¤¹
XSSFCell cell = sheet.getRow(0).getCell(0); //¡¡¥»¥ë(0,0)¡áA1¤ò»ØÄê
System.out.println(cell.getStringCellValue()); // ¥»¥ëA1¤ÎÆâÍÆ¤ò¡¢Ê¸»úÎó¤È¤·¤ÆÆÉ½Ð¤·
// System.out.println(cell.getNumericCellValue()); //¿ôÃÍ¥»¥ë¤Î¾ì¹ç
// cell.setCellValue(cell.getNumericCellValue() +5); //¥»¥ë¤ò½ñ¤ÊѤ¨¤ë¾ì¹ç
// cell.setCellValue('¤¢¤¤¤¦'); // ʸ»ú¤ò½ñ¤¤³¤ß¤¿¤¤¤È¤
XSSFCellStyle cellstyle = wb.createCellStyle(); // CellStyle¤òºî¤Ã¤Æ¤ª¤¯
cellstyle.setFillPattern(XSSFCellStyle.BIG_SPOTS); //FINE_DOTS¤È¤«¤¤¤í¤¤¤íÁªÂò¤Ç¤¤ë
cellstyle.setFillForegroundColor(new XSSFColor(new java.awt.Color(128,0,128))); // RGB¤Ç¿§(Foregroud)¤ò»ØÄê
cell.setCellStyle(cellstyle); // ¤³¤ì¤Çcell¤ËÂФ·¤Æ¥¹¥¿¥¤¥ë¤òÀßÄê
is.close();
FileOutputStream os = new FileOutputStream("/home/yamanouc/src/poi/cali/newversion.xlsx");
wb.write(os); // ¥Õ¥¡¥¤¥ë¤Ë½ñ¤½Ð¤·
}
}
¥»¥ë¤Î¥¹¥¿¥¤¥ë¥×¥í¥Ñ¥Æ¥£¡ÊÅɤê¤Ä¤Ö¤·¤È¤«¿§¤È¤«¡Ë¤ò»ØÄꤹ¤ë¤Ë¤Ï¡¢
-¤¢¤é¤«¤¸¤á¡¢HSSFCellstyle¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òcreateCellStyle¤Çºî¤Ã¤Æ¤ª¤¤¤Æ¡¢
-²¼µ¤ÎsetFillForegroundColor¤È¤«setFillBackgroundColor¤È¤«setFillPattern¤ÇÀßÄê¤òÊѤ¨¤Æ¤ª¤¤¤Æ¡¢
-cell¥ª¥Ö¥¸¥§¥¯¥È¤ËÂФ·¤Æcell.setCellStyle¤Ç¥¹¥¿¥¤¥ë¤òÀßÄꤹ¤ë¤È¡¢½é¤á¤ÆÍ¸ú¤Ë¤Ê¤ë¡£
XSSFCellStyle cellstyle = wb.createCellStyle(); // CellStyle¤òºî¤Ã¤Æ¤ª¤¯
cellstyle.setFillPattern(XSSFCellStyle.BIG_SPOTS); //FINE_DOTS¤È¤«¤¤¤í¤¤¤íÁªÂò¤Ç¤¤ë
cellstyle.setFillForegroundColor(new XSSFColor(new java.awt.Color(128,0,128))); // RGB¤Ç¿§(Foregroud)¤ò»ØÄê
cell.setCellStyle(cellstyle); // ¤³¤ì¤Çcell¤ËÂФ·¤Æ¥¹¥¿¥¤¥ë¤òÀßÄê
Åɤê¤Ä¤Ö¤·¥Ñ¥¿¡¼¥ó¤Î»ØÄê¤Ï¡¢setFillPattern¤Ç¹Ô¤¦¡£¥Ñ¥¿¡¼¥ó¤ÎÁªÂò»è¤Ï¡¢
ALT_BARS, BIG_SPOTS, BRICKS, DIAMONDS, FINE_DOTS, LEAST_DOTS, LESS_DOTS, NO_FILL,
SOLID_FOREGROUND, SPARSE_DOTS, SQUARES, THICK_BACKWARD_DIAG, THICK_FORWARD_DIAG,
THICK_HORZ_BANDS, THICK_VERT_BANDS, THIN_BACKWARD_DIAG, THIN_FORWARD_DIAG,
THIN_HORZ_BANDS, THIN_VERT_BANDS
¿§¤Î°·¤¤¤Ï¡¢·è¤Þ¤Ã¤¿¿§¤Ç»ØÄꤹ¤ë¤«¡¢RGB¤Ç»ØÄꤹ¤ë¤«¤Î¤¤¤º¤ì¤«¡£·è¤Þ¤Ã¤¿¿§¥Ñ¥¿¡¼¥ó¤Ï¡¢org.apache.poi.ss.usermodel.IndexedColors¡¡¤Ë¤¢¤Ã¤Æ¡¢
AQUA AUTOMATIC BLACK BLUE
BLUE_GREY BRIGHT_GREEN BROWN CORAL
CORNFLOWER_BLUE DARK_BLUE DARK_GREEN DARK_RED
DARK_TEAL DARK_YELLOW GOLD GREEN
GREY_25_PERCENT GREY_40_PERCENT GREY_50_PERCENT GREY_80_PERCENT
INDIGO LAVENDER LEMON_CHIFFON LIGHT_BLUE
LIGHT_CORNFLOWER_BLUE LIGHT_GREEN LIGHT_ORANGE
LIGHT_TURQUOISE LIGHT_YELLOW LIME MAROON
OLIVE_GREEN ORANGE ORCHID PALE_BLUE
PINK PLUM RED ROSE
ROYAL_BLUE SEA_GREEN SKY_BLUE TAN
TEAL TURQUOISE VIOLET WHITE
YELLOW
¤³¤ì¤é¤Î¿§¤ò»ØÄꤷ¤¿¤¦¤¨¤Ç¡¢¥á¥½¥Ã¥ÉgetIndex()¤Ç¡¢¤³¤³¤Ç»È¤¨¤ëshort¤ÎÃͤò¼è¤ê¤À¤¹¡£
setFillForegroundColor(IndexedColors.MAROON.getIndex());
setFillBackgroundColor(IndexedColors.SKY_BLUE.getIndex());
¤³¤Î¤Û¤«¡¢java.awt.Color¤Ç¤Î¿§»ØÄ꤬»È¤¨¤ë¡£
-¤Þ¤ºjava.awt.Color¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òºî¤Ã¤Æ¡¢
-¤½¤ì¤ò°ú¿ô¤Ë¤·¤ÆXSSFColor¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òºî¤Ã¤Æ¡¢
-¤½¤ì¤ò°ú¿ô¤Ë¤·¤ÆsetFillForegroundColor¤ò¸Æ¤Ó½Ð¤¹¡£
setFillForegroundColor(new XSSFColor(new java.awt.Color(128,0,128)));
**¥»¥ë¤ò¤¹¤Ù¤Æ¤Ê¤á¤ë¤Ë¤Ï [#kbfe9b87]
org.apache.poi.ss.usermodel¤Ë´Þ¤Þ¤ì¤ëRow¤äCell¡¢org.apahce.poi.ss.util¤Ë´Þ¤Þ¤ì¤ëCellReference¤ò»È¤Ã¤Æ
for (Row row:sheet) { // Á´Éô¤Î¹Ô¤ò¤Ê¤á¤ë
for (Cell cell:row) {// Á´Éô¤Î¥»¥ë¤ò¤Ê¤á¤ë
CellReference cellRef = new CellReference(row.getRowNum(), cell.getColumnIndex());
System.out.print(cellRef.formatAsString());
System.out.println(cell.getStringCellValue());
}
}
¤È¤¤¤¦¤³¤È¤¬¤Ç¤¤ë¡£
**Java¤ÎHashMap¤Ç¡¢valueÍ×ÁǤËÇÛÎó¤ò»È¤¤¤¿¤¤ [#k17b0c28]
¤ä¤ê¤¿¤¤¤³¤È¤Ï¡¢¥·¡¼¥È¤Î¾å¤Ë¤¢¤ë¥»¥ë¥¨¥ó¥È¥ê¤ÎÃÍ¡Êʸ»úÎ󤬯þ¤Ã¤Æ¤¤¤ë¡Ë¤òÊÝ»ý¤·¤Æ¤ª¤¤¤Æ¡¢ÊÌ¥Õ¥¡¥¤¥ë¤«¤éÆþÎϤ·¤¿Ê¸»úÎó¤ÈÈæ³Ó¤·¤Æ¡Êµ¼¡Ë°ìÃפ·¤¿¾ì¹ç¤Ë¤Ï¡¢¿§¤òÊѤ¨¤ë½èÍý¤ò¤¹¤ë¤³¤È¡£~
¤³¤Î¤È¤¡¢¤É¤ó¤Ê¥»¥ë¥¨¥ó¥È¥êʸ»úÎ󤬤¢¤ë¤«¤òHashMap¤Ë¡ãʸ»úÎó¡¢(¥»¥ë£Ø, ¥»¥ë£Ù)¡ä¤Î·Á¤ÇÊÝ»ý¤·¤Æ¤ª¤¤¤Æ¡¢¸å¤Ç°ìÃפò°ú¤±¤Ð¤¤¤¤¤À¤í¤¦¡£¡Ê¥µ¡¼¥Á¤Ê¤ó¤Æ¤·¤¿¤¯¤Ê¤¤¤«¤é¡Ë
¤Ç¡¢HashMap¥¿¥¤¥×¤Îvalue¥¨¥ó¥È¥ê¤Ë¡¢À°¿ô¤Î¥Ú¥¢¡Ê£Ø, £Ù¡Ë¤òÆþ¤ì¤¿¤¤¡£
import java.lang.reflect.*;
import java.util.HashMap;
import java.util.ArrayList;
class testHashMap {
public static void main(String args[]){
HashMap<String,ArrayList<Integer>> map = new HashMap<String,ArrayList<Integer>>();
ArrayList<Integer> pair = new ArrayList<Integer>();
pair.add(1); pair.add(3);
map.put("¤ê¤ó¤´", pair);
ArrayList<Integer> pair2= new ArrayList<Integer>();
pair2.add(5); pair2.add(6);
map.put("¤Ö¤É¤¦", pair2);
if (map.containsKey("¤ê¤ó¤´")){
System.out.print("¤ê¤ó¤´=>");
System.out.println(map.get("¤ê¤ó¤´"));
}else{
System.out.println("»ØÄꤷ¤¿¥¡¼¤Ï¸ºß¤·¤Þ¤»¤ó");
}
}
}
»²¾È¥Ú¡¼¥¸¤Ï¡¢
-[[HashMap – Single Key and Multiple Values Example:http://java.dzone.com/articles/hashmap-%E2%80%93-single-key-and]]
-[[ArrayList¥¯¥é¥¹:http://www.javadrive.jp/start/arraylist/index1.html]]
¤³¤³¤Ç¤Î¼ºÇÔ~
pair2¤òºî¤ë¤Î¤¬áû¤À¤Ã¤¿¤Î¤Ç¡¢Æ±¤¸¥¤¥ó¥¹¥¿¥ó¥¹¤ò»È¤Ã¤Æ¡¢ÆâÍÆ¤ò¾Ã¤·¤Æ¡¢¤Ö¤É¤¦¤Ë¤â»È¤¤¤Þ¤ï¤½¤¦¤È»×¤Ã¤¿¤Î¤À¤¬¡¢
ArrayList<Integer> pair = new ArrayList<Integer>();
pair.add(1); pair.add(3);
map.put("¤ê¤ó¤´", pair);
pair.clear(); <<--- pair¤òºÆÍøÍѤ¹¤ë¡Ê¥ê¥¹¥È¤ò¶õ¤Ë¤·¤Æ¡Ë
pair.add(5); pair.add(6);
map.put("¤Ö¤É¤¦", pair);
¤³¤ì¤Ï¡¢ÅöÁ³¥À¥á¡£map¤ÎÆâÍÆ¤Ï¥Ý¥¤¥ó¥¿¤À¤±¤Ç¡¢¤½¤ÎÀè¤Ï£±¤Ä¤·¤«¤Ê¤¤pair¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤Ë¸þ¤¤¤Æ¤¤¤ë¤«¤é¡¢¤ê¤ó¤´¤ÎÊý¤âÃͤÏ(5, 6)¤Ë¤Ê¤Ã¤Æ¡¢¥Á¥ã¥ó¥Á¥ã¥ó¡£¤¢¤Þ¤ê¤Ëñ½ã¤Ê´Ö°ã¤¤¡£
¤È¤¤¤¦¤ï¤±¤Ç¡¢Ê̤Υ¤¥ó¥¹¥¿¥ó¥¹pair2¤¬É¬ÍפÀ¤Ã¤¿¡£¡Ê¤«¡¢¥³¥Ô¡¼¤·¤Æ¥¤¥ó¥¹¥¿¥ó¥¹¤òºî¤êľ¤¹¤«¡Ë
¤¸¤ã¤¢¡¢new¤Çºî¤ì¤Ð¤¤¤¤¤ó¤Ç¤·¤ç¡¢¤È¤¤¤¦¤Î¤Ï¡¢
ArrayList<Integer> pair = new ArrayList<Integer>();
pair.add(1); pair.add(3);
map.put("¤ê¤ó¤´", pair);
ArrayList<Integer> pair = new ArrayList<Integer>(); <<<---ºî¤ê¤Ê¤ª¤¹
pair.add(5); pair.add(6);
map.put("¤Ö¤É¤¦", pair);
¥³¥ó¥Ñ¥¤¥ë»þ¤Ë¥À¥á¡£
testHashMap.java:12: ¥¨¥é¡¼: ÊÑ¿ô pair¤Ï¤¹¤Ç¤Ë¥á¥½¥Ã¥É main(String[])¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹
ArrayList<Integer> pair= new ArrayList<Integer>();
^
**²ò·èÊÔ¡¡¡Ê2015-04-06) [#jfc3f0c3]
¤³¤Î¼ê¤¬¤¢¤Ã¤¿¡££²¤Ä¤Î¥Ý¥¤¥ó¥È¡£Íפ¹¤ë¤Ëpair¤È¤¤¤¦Ì¾Á°¤ò¤Ä¤±¤¿¤¯¤Ê¤¤¤Î¤À¤«¤é¡¢put¤Î°ú¿ô¤È¤·¤Ænew¤òľÀܤ˽ñ¤¤¤Æ¤·¤Þ¤¤¤¿¤¤¡£new¤Ç¸Æ¤Ð¤ì¤ë¥³¥ó¥¹¥È¥é¥¯¥¿¤Ë¡¢¥ê¥¹¥ÈÍ×ÁǤÎÃͤòÍ¿¤¨¤Æ¡¢ArrayList¤òºî¤ê¤¿¤¤¡£
¤³¤ó¤Ê¥Ú¡¼¥¸¤ò»²¾È¤·¤Þ¤·¤¿¡£¡¡¡¡[[Java¸À¸ì¤Ç¸ÇÄêÍ×ÁǤÎList¤ò½é´ü²½¤¹¤ëºÝ¤Î¥¤¥Ç¥£¥ª¥à:http://d.hatena.ne.jp/ryoasai/20101226/1293350856]]¡£
import java.lang.reflect.*;
import java.util.*;
class testHashMap2 {
public static void main(String args[]){
HashMap<String,List<Integer>> map = new HashMap<String,List<Integer>>();
map.put("¤ê¤ó¤´", new ArrayList<Integer>(Arrays.asList(1,3)));
map.put("¤Ö¤É¤¦", new ArrayList<Integer>(Arrays.asList(5,6)));
if (map.containsKey("¤ê¤ó¤´")){
System.out.print("¤ê¤ó¤´=>");
System.out.println(map.get("¤ê¤ó¤´"));
}else{
System.out.println("»ØÄꤷ¤¿¥¡¼¤Ï¸ºß¤·¤Þ¤»¤ó");
}
}
}
**Excel¤Î¥»¥ë¤ÎÆâÍÆ¤ò¼è¤ê½Ð¤¹¥×¥í¥°¥é¥à¤ÎÎã [#i713cbc3]
import java.io.FileInputStream;
import java.io.InputStream;
import java.lang.reflect.*;
import java.util.*;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
public class ExtractMapEntries {
public static void main(String[] args) throws Exception {
if (args.length != 1) {
System.out.println("°ú¿ô¤Î¸Ä¿ô¤Ï£±¤Ä¤Ë¤·¤Æ¤¯¤À¤µ¤¤");
System.exit(0);
}
InputStream is = new FileInputStream(args[0]);
Workbook wb = WorkbookFactory.create(is);
Sheet sheet = wb.getSheetAt(0);
HashMap<String,List<Integer>> map = new HashMap<String,List<Integer>>();
for (Row row:sheet) { // Á´Éô¤Î¹Ô¤ò¤Ê¤á¤ë
for (Cell cell:row) {// Á´Éô¤Î¥»¥ë¤ò¤Ê¤á¤ë
// System.out.print(String.valueOf(cell.getRowIndex()) + '-' + String.valueOf(cell.getColumnIndex()));
// System.out.println(cell.getStringCellValue()); //¤³¤ó¤ÊÉ÷¤Ë°õºþ¤Ç¤¤ë
Integer R = Integer.valueOf(cell.getRowIndex()); // R¤È¤«C¤Ë¼è¤ê½Ð¤¹É¬Íפâ̵¤¤¤Î¤À¤¬Ä¹¤¯¤Ê¤ë¤Î¤Ç
Integer C = Integer.valueOf(cell.getColumnIndex());
String V = cell.getStringCellValue();
map.put(V, new ArrayList<Integer>(Arrays.asList(R,C)));
}
}
//map¤ÎÆâÍÆ¤òÁ´Éô½ñ¤½Ð¤¹¡£keSet¤ò¥¤¥Æ¥ì¡¼¥¿¤Î¤è¤¦¤Ë»È¤Ã¤Æ¡£
for (String key : map.keySet()) {
System.out.println("[" + key + "]" + " " + Integer.toString((map.get(key)).get(0)) + " " + Integer.toString((map.get(key)).get(1)) );
// map¤«¤éget(key)¤·¤¿ÆâÍÆ¤Ï£²Í×ÁǤÎList¤Ê¤Î¤Ç¡¢¤½¤ÎÍ×ÁÇ(0)¤È(1)¤ò¼è¤ê½Ð¤¹¡£
// Í×ÁǤÏInteger¤Ê¤Î¤Ç¡ÊList¤Ë¤¹¤ë»þ¤Ëint¤Ç¤Ï¤Ê¤¯¤ÆInteger¤Ë¤·¤¿¡ËtoString¤ÇString·¿¤Ë¤¹¤ë
}
}
}
½èÍý·ë²Ì¤Î¥¤¥á¡¼¥¸¤Ï¡¢¤³¤ó¤Ê´¶¤¸¤Ë¤Ê¤Ã¤¿¡£
[] 172 20
[Êü¼ÍÀþÀ¸Êª³Ø] 119 14
[¼Â¸³Æ°Êª³Ø¼Â½¬] 162 16
[¡¦Ê¸Íý·Ï¤òͤ¨¤ÆÉáÊ×Ū¤Ê¡ÖÃΡפò¹½ÃÛ¤¹¤ëǽÎϤò] 8 4
[ʬÀϲ½³Ø] 90 8
[ʪÍý³Ø¼Â¸³] 148 16
[¡¦Â¾¼Ô¤ËÂФ¹¤ë´Ø¿´¤ä¼Ò²ñ¤Îư¤¤Ê¤É¡¢¹â¤¤ÃÎŪ] 10 4
[µ¡´ïʬÀϲ½³Ø] 150 16
[±Ñ¸ìA£´] 34 8
[²ÊÌÜ·²¤Ç¿È¤Ë¤Ä¤±¤ëǽÎÏ] 83 4
[±Ñ¸ìB£´] 34 12
[±Ñ¸ìB£³] 33 12
[ʬ»ÒÀ¸Êª³Ø] 97 10
[ʬ»ÒÀ¸Íý³Ø] 147 16
[¿ôÍý²Ê³ØÆÃÏÀB£²] 25 12
[¿¢ÊªÀ¸Íý I] 106 8
[·ÏÅýÀ¸Êª³Ø] 106 6
[͵¡Ê¬ÀÏË¡] 150 14
[ʬ»Ò°äÅÁ³Ø] 96 16
[ÎϤò¿È¤Ë¤Ä¤±¤ë¡£] 59 4
[³¤³°Âθ³¥×¥í¥°¥é¥à¶] 73 6
[³¤³°Âθ³¥×¥í¥°¥é¥àµ] 72 6
[²Ê³ØÅ¯³Øµ] 18 6
[´ðÁÃÀ¸Êª³Ø] 107 6
[Îò»Ë³Øµ] 11 6
[´ðÁÃÀ¸Íý³Ø] 147 8
[Îò»Ë³Ø¶] 11 8
[À¸ÊªÊ¬»Ò²Ê³Ø¼Â¸³ II] 137 10
[Î×¾²·ì±Õ³Ø¼Â½¬] 156 20
[¶µÍܶµ°é²ÊÌÜ] 8 0
[À¸ÊªÌµµ¡²½³Ø] 87 12
[£±Ç¯¼¡] 83 6
[À¸²½³Ø II] 96 12
[À¸ÊªÊ¬»Ò²Ê³ØÆÃÏÀ III] 130 16
[À¸ÊªÊ¬»Ò²Ê³Ø¼Â¸³ IV] 138 10
[·ì±Õ³Ø] 156 14
[¿¿ô¤Î²½³ØÈ¿±þ¤Î½¸ÀѤǤ¢¤ëÀ¸Ì¿¸½¾Ý¤Ë¤Ä¤¤¤ÆÍý²ò¤ò¿¼¤á¤ë¤¿¤á¤Ë¡¢½éǯ¼¡¤Ç¤ÏÀìÌçʬ Ìî¤Î´ðÁóØÎϤ䥹¥¥ë¤ò½¤ÆÀ¤·¡¢£²¡Á£³Ç¯¼¡¤Ç¤Ï¿ºÌ¤Ê¼Â¸³²ÊÌܤȹâÅÙ¤ÊÀìÌç²ÊÌܤò½¤ÆÀ¤¹¤ë¡££´Ç¯¼¡¤Ç¤Ï¿È¤Ë¤Ä¤±¤¿ÀìÌçÃμ±¤È¥¹¥¥ë¤ò¤â¤È¤Ë´¶È¸¦µæ¤Ë¤è¤Ã¤ÆÌäÂê²ò·èǽÎϤò¿È¤Ë¤Ä ¤±¤ë¡£] 1 0
[ÃϳØ] 128 10
[À¸ÊªÊ¬»Ò²Ê³Ø²Ê] 0 16
[ɸ¶ÈùÀ¸Êª³Ø] 153 16
[¥¥ã¥ê¥¢¥Ç¥¶¥¤¥ó·] 63 12
[£³Ç¯¼¡] 83 14
½ªÎ»¹Ô:
[[¥Î¡¼¥È>¥Î¡¼¥È/¥Î¡¼¥È]]
*Java¤«¤éExcel¥Õ¥¡¥¤¥ë¤ò¤¤¤¸¤ëApache POI [#e50a3c01]
¥Ý¥¤¥ó¥È¡§
-Java¤Î¥Ñ¥Ã¥±¡¼¥¸POI¤Ç¡¢Excel¤Î¥Õ¥¡¥¤¥ë ***.xlsx ¤òÁàºî¤Ç¤¤ë~
POI¤ÏMicrosoft¤ÎOffice¥É¥¥å¥á¥ó¥È¡ÊWord, Excel, ...¡Ë¤òÁàºî¤Ç¤¤ë¥é¥¤¥Ö¥é¥ê¤Ç¡¢º£»È¤¦¤Î¤ÏExcel¤ÎÉôʬ¤À¤±¡£
-Âоݤϡ¢Office2007°Ê¹ß¤Ç»È¤ï¤ì¤Æ¤¤¤ëxlsx¥Õ¥¡¥¤¥ë¤Î¤ß¡£¸Å¤¤xls¥Õ¥¡¥¤¥ë¤ÏÂоݳ°¡£~
¸Å¤¤xls¥Õ¥¡¥¤¥ë¤Î¾ì¹ç¡¢Â¿¾¯API¤Î»È¤¤Êý¤¬°ã¤¦¤é¤·¤¤¤Î¤Ç¡¢·ë¹½º®Íð¤Î¸µ¤Î¤è¤¦¤Êµ¤¤¬¤¹¤ë¡£
-API¥É¥¥å¥á¥ó¥È¤Ï¤À´°È÷¤·¤Æ¤¤¤ë¤¬¡¢»²¹Í¥Ú¡¼¥¸¤Ï¾¯¤Ê¤¤
»²¾È¥Ú¡¼¥¸
-[[POI¥×¥í¥¸¥§¥¯¥È¤Î¥È¥Ã¥×¥Ú¡¼¥¸:http://poi.apache.org/index.html]]
-[[POI-HSSF and POI-XSSF - Java API To Access Microsoft Excel Format Files:http://poi.apache.org/spreadsheet/index.html]]
-[[Busy Developers' Guide to HSSF and XSSF Features:http://poi.apache.org/spreadsheet/quick-guide.html]]
-[[API¥É¥¥å¥á¥ó¥È:http://poi.apache.org/apidocs/index.html]]
¥µ¥ó¥×¥ë¤ò´Þ¤à¥Ú¡¼¥¸
-[[Java¤Çexcel¥Õ¥¡¥¤¥ë(.xlsx)¤òÆÉ¤à¡§POI¥µ¥ó¥×¥ë:http://k-hiura.cocolog-nifty.com/blog/2012/09/javaexcelxlsxpo.html]]
-[[PoiBuilder ¤Ç Quick Guide (10) ¡§ ¿§¤Î¥«¥¹¥¿¥Þ¥¤¥º:http://waman.hatenablog.com/entry/20110707/1310059776]]
-[[Read / Write Excel File In Java Using Apache POI:http://viralpatel.net/blogs/java-read-write-excel-file-apache-poi/]]
-[[Reading/writing excel files in java : POI tutorial:http://howtodoinjava.com/2013/06/19/readingwriting-excel-files-in-java-poi-tutorial/]]
-[[Java¤ÈApache POI¤ò»È¤Ã¤ÆExcel¤Ç¤¦¤µ¤®´Ñ»¡Æüµ¤òºî¤í¤¦:http://itpro.nikkeibp.co.jp/article/COLUMN/20110405/359101/]]
-[[Á°·Ê¿§¤ÈÇØ·Ê¿§:http://www.javadrive.jp/poi/style/index2.html]]
**¥¤¥ó¥¹¥È¡¼¥ë [#r29db558]
¥Ñ¥Ã¥±¡¼¥¸¤ò¥À¥¦¥ó¥í¡¼¥É¡¦²òÅष¡¢¥¯¥é¥¹¥Ñ¥¹¤ÎÄ̤äƤ¤¤ë¥Ç¥£¥ì¥¯¥È¥ê¤ØÃÖ¤¯
-[[Apache POI 3.6¤Î¥¤¥ó¥¹¥È¡¼¥ë:http://www.javadrive.jp/poi/install/index2.html]]
ÌÌÅݤʤΤǡ¢/usr/share/java/¤Î²¼¤ËÃÖ¤¤¤¿¡£
**»È¤¤Êý¤Î¥µ¥ó¥×¥ë [#f9c7c85d]
Ãí¡§ UTF-8¤Ç´Á»ú¤â£Ï£Ë¤À¤Ã¤¿¡£
¾åµ¤Î¥Ö¥í¥°¤Ë¤â¥µ¥ó¥×¥ë¤¬¤¢¤ë¡£
Excel¥Õ¥¡¥¤¥ë¤Î¿·¤·¤¤¡Ê2007°Ê¹ß¡©¡Ë.xlsx¤Î¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¤Ï¡¢¥é¥¤¥Ö¥é¥êXSSF¤ò»È¤¦¡£
¸Å¤¤.xls¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¤ÏHSSF¤ò»È¤¦¡£°ì½ï¤Ë¡Êº®¤¼¤Æ¡ËÂбþ¤Ï¤Ç¤¤ë¤Î¤«¤ÏÉÔÌÀ¡£¤³¤³¤Ç¤Ï¡¢XSSF¤Î¤ßÂбþ¡£
***Îã¡¡¥Õ¥¡¥¤¥ë¤òÆÉ¤ó¤Ç¡¢¥»¥ë¤ò¼è¤ê½Ð¤·¤¿¤ê¡¢½ñ¤¹þ¤ó¤À¤ê¡¢²Ã¹©¤·¤¿¤ê¤¹¤ë [#v36d38a8]
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.awt.Color;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFCellStyle;
import org.apache.poi.xssf.usermodel.XSSFColor;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class ReadWriteSample {
public static void main(String[] args) throws Exception {
FileInputStream is = new FileInputStream("/home/yamanouc/src/poi/cali/bunshi.xlsx"); // ¥Õ¥¡¥¤¥ëÆÉ¤ß¹þ¤ß
XSSFWorkbook wb = new XSSFWorkbook(is); // ¥ï¡¼¥¯¥Ö¥Ã¥¯¤Ë¼è¤ê¹þ¤à
XSSFSheet sheet = wb.getSheetAt(0); // ¥·¡¼¥È£°ÈÖ¤ò¼è¤ê¤À¤¹
XSSFCell cell = sheet.getRow(0).getCell(0); //¡¡¥»¥ë(0,0)¡áA1¤ò»ØÄê
System.out.println(cell.getStringCellValue()); // ¥»¥ëA1¤ÎÆâÍÆ¤ò¡¢Ê¸»úÎó¤È¤·¤ÆÆÉ½Ð¤·
// System.out.println(cell.getNumericCellValue()); //¿ôÃÍ¥»¥ë¤Î¾ì¹ç
// cell.setCellValue(cell.getNumericCellValue() +5); //¥»¥ë¤ò½ñ¤ÊѤ¨¤ë¾ì¹ç
// cell.setCellValue('¤¢¤¤¤¦'); // ʸ»ú¤ò½ñ¤¤³¤ß¤¿¤¤¤È¤
XSSFCellStyle cellstyle = wb.createCellStyle(); // CellStyle¤òºî¤Ã¤Æ¤ª¤¯
cellstyle.setFillPattern(XSSFCellStyle.BIG_SPOTS); //FINE_DOTS¤È¤«¤¤¤í¤¤¤íÁªÂò¤Ç¤¤ë
cellstyle.setFillForegroundColor(new XSSFColor(new java.awt.Color(128,0,128))); // RGB¤Ç¿§(Foregroud)¤ò»ØÄê
cell.setCellStyle(cellstyle); // ¤³¤ì¤Çcell¤ËÂФ·¤Æ¥¹¥¿¥¤¥ë¤òÀßÄê
is.close();
FileOutputStream os = new FileOutputStream("/home/yamanouc/src/poi/cali/newversion.xlsx");
wb.write(os); // ¥Õ¥¡¥¤¥ë¤Ë½ñ¤½Ð¤·
}
}
¥»¥ë¤Î¥¹¥¿¥¤¥ë¥×¥í¥Ñ¥Æ¥£¡ÊÅɤê¤Ä¤Ö¤·¤È¤«¿§¤È¤«¡Ë¤ò»ØÄꤹ¤ë¤Ë¤Ï¡¢
-¤¢¤é¤«¤¸¤á¡¢HSSFCellstyle¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òcreateCellStyle¤Çºî¤Ã¤Æ¤ª¤¤¤Æ¡¢
-²¼µ¤ÎsetFillForegroundColor¤È¤«setFillBackgroundColor¤È¤«setFillPattern¤ÇÀßÄê¤òÊѤ¨¤Æ¤ª¤¤¤Æ¡¢
-cell¥ª¥Ö¥¸¥§¥¯¥È¤ËÂФ·¤Æcell.setCellStyle¤Ç¥¹¥¿¥¤¥ë¤òÀßÄꤹ¤ë¤È¡¢½é¤á¤ÆÍ¸ú¤Ë¤Ê¤ë¡£
XSSFCellStyle cellstyle = wb.createCellStyle(); // CellStyle¤òºî¤Ã¤Æ¤ª¤¯
cellstyle.setFillPattern(XSSFCellStyle.BIG_SPOTS); //FINE_DOTS¤È¤«¤¤¤í¤¤¤íÁªÂò¤Ç¤¤ë
cellstyle.setFillForegroundColor(new XSSFColor(new java.awt.Color(128,0,128))); // RGB¤Ç¿§(Foregroud)¤ò»ØÄê
cell.setCellStyle(cellstyle); // ¤³¤ì¤Çcell¤ËÂФ·¤Æ¥¹¥¿¥¤¥ë¤òÀßÄê
Åɤê¤Ä¤Ö¤·¥Ñ¥¿¡¼¥ó¤Î»ØÄê¤Ï¡¢setFillPattern¤Ç¹Ô¤¦¡£¥Ñ¥¿¡¼¥ó¤ÎÁªÂò»è¤Ï¡¢
ALT_BARS, BIG_SPOTS, BRICKS, DIAMONDS, FINE_DOTS, LEAST_DOTS, LESS_DOTS, NO_FILL,
SOLID_FOREGROUND, SPARSE_DOTS, SQUARES, THICK_BACKWARD_DIAG, THICK_FORWARD_DIAG,
THICK_HORZ_BANDS, THICK_VERT_BANDS, THIN_BACKWARD_DIAG, THIN_FORWARD_DIAG,
THIN_HORZ_BANDS, THIN_VERT_BANDS
¿§¤Î°·¤¤¤Ï¡¢·è¤Þ¤Ã¤¿¿§¤Ç»ØÄꤹ¤ë¤«¡¢RGB¤Ç»ØÄꤹ¤ë¤«¤Î¤¤¤º¤ì¤«¡£·è¤Þ¤Ã¤¿¿§¥Ñ¥¿¡¼¥ó¤Ï¡¢org.apache.poi.ss.usermodel.IndexedColors¡¡¤Ë¤¢¤Ã¤Æ¡¢
AQUA AUTOMATIC BLACK BLUE
BLUE_GREY BRIGHT_GREEN BROWN CORAL
CORNFLOWER_BLUE DARK_BLUE DARK_GREEN DARK_RED
DARK_TEAL DARK_YELLOW GOLD GREEN
GREY_25_PERCENT GREY_40_PERCENT GREY_50_PERCENT GREY_80_PERCENT
INDIGO LAVENDER LEMON_CHIFFON LIGHT_BLUE
LIGHT_CORNFLOWER_BLUE LIGHT_GREEN LIGHT_ORANGE
LIGHT_TURQUOISE LIGHT_YELLOW LIME MAROON
OLIVE_GREEN ORANGE ORCHID PALE_BLUE
PINK PLUM RED ROSE
ROYAL_BLUE SEA_GREEN SKY_BLUE TAN
TEAL TURQUOISE VIOLET WHITE
YELLOW
¤³¤ì¤é¤Î¿§¤ò»ØÄꤷ¤¿¤¦¤¨¤Ç¡¢¥á¥½¥Ã¥ÉgetIndex()¤Ç¡¢¤³¤³¤Ç»È¤¨¤ëshort¤ÎÃͤò¼è¤ê¤À¤¹¡£
setFillForegroundColor(IndexedColors.MAROON.getIndex());
setFillBackgroundColor(IndexedColors.SKY_BLUE.getIndex());
¤³¤Î¤Û¤«¡¢java.awt.Color¤Ç¤Î¿§»ØÄ꤬»È¤¨¤ë¡£
-¤Þ¤ºjava.awt.Color¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òºî¤Ã¤Æ¡¢
-¤½¤ì¤ò°ú¿ô¤Ë¤·¤ÆXSSFColor¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òºî¤Ã¤Æ¡¢
-¤½¤ì¤ò°ú¿ô¤Ë¤·¤ÆsetFillForegroundColor¤ò¸Æ¤Ó½Ð¤¹¡£
setFillForegroundColor(new XSSFColor(new java.awt.Color(128,0,128)));
**¥»¥ë¤ò¤¹¤Ù¤Æ¤Ê¤á¤ë¤Ë¤Ï [#kbfe9b87]
org.apache.poi.ss.usermodel¤Ë´Þ¤Þ¤ì¤ëRow¤äCell¡¢org.apahce.poi.ss.util¤Ë´Þ¤Þ¤ì¤ëCellReference¤ò»È¤Ã¤Æ
for (Row row:sheet) { // Á´Éô¤Î¹Ô¤ò¤Ê¤á¤ë
for (Cell cell:row) {// Á´Éô¤Î¥»¥ë¤ò¤Ê¤á¤ë
CellReference cellRef = new CellReference(row.getRowNum(), cell.getColumnIndex());
System.out.print(cellRef.formatAsString());
System.out.println(cell.getStringCellValue());
}
}
¤È¤¤¤¦¤³¤È¤¬¤Ç¤¤ë¡£
**Java¤ÎHashMap¤Ç¡¢valueÍ×ÁǤËÇÛÎó¤ò»È¤¤¤¿¤¤ [#k17b0c28]
¤ä¤ê¤¿¤¤¤³¤È¤Ï¡¢¥·¡¼¥È¤Î¾å¤Ë¤¢¤ë¥»¥ë¥¨¥ó¥È¥ê¤ÎÃÍ¡Êʸ»úÎ󤬯þ¤Ã¤Æ¤¤¤ë¡Ë¤òÊÝ»ý¤·¤Æ¤ª¤¤¤Æ¡¢ÊÌ¥Õ¥¡¥¤¥ë¤«¤éÆþÎϤ·¤¿Ê¸»úÎó¤ÈÈæ³Ó¤·¤Æ¡Êµ¼¡Ë°ìÃפ·¤¿¾ì¹ç¤Ë¤Ï¡¢¿§¤òÊѤ¨¤ë½èÍý¤ò¤¹¤ë¤³¤È¡£~
¤³¤Î¤È¤¡¢¤É¤ó¤Ê¥»¥ë¥¨¥ó¥È¥êʸ»úÎ󤬤¢¤ë¤«¤òHashMap¤Ë¡ãʸ»úÎó¡¢(¥»¥ë£Ø, ¥»¥ë£Ù)¡ä¤Î·Á¤ÇÊÝ»ý¤·¤Æ¤ª¤¤¤Æ¡¢¸å¤Ç°ìÃפò°ú¤±¤Ð¤¤¤¤¤À¤í¤¦¡£¡Ê¥µ¡¼¥Á¤Ê¤ó¤Æ¤·¤¿¤¯¤Ê¤¤¤«¤é¡Ë
¤Ç¡¢HashMap¥¿¥¤¥×¤Îvalue¥¨¥ó¥È¥ê¤Ë¡¢À°¿ô¤Î¥Ú¥¢¡Ê£Ø, £Ù¡Ë¤òÆþ¤ì¤¿¤¤¡£
import java.lang.reflect.*;
import java.util.HashMap;
import java.util.ArrayList;
class testHashMap {
public static void main(String args[]){
HashMap<String,ArrayList<Integer>> map = new HashMap<String,ArrayList<Integer>>();
ArrayList<Integer> pair = new ArrayList<Integer>();
pair.add(1); pair.add(3);
map.put("¤ê¤ó¤´", pair);
ArrayList<Integer> pair2= new ArrayList<Integer>();
pair2.add(5); pair2.add(6);
map.put("¤Ö¤É¤¦", pair2);
if (map.containsKey("¤ê¤ó¤´")){
System.out.print("¤ê¤ó¤´=>");
System.out.println(map.get("¤ê¤ó¤´"));
}else{
System.out.println("»ØÄꤷ¤¿¥¡¼¤Ï¸ºß¤·¤Þ¤»¤ó");
}
}
}
»²¾È¥Ú¡¼¥¸¤Ï¡¢
-[[HashMap – Single Key and Multiple Values Example:http://java.dzone.com/articles/hashmap-%E2%80%93-single-key-and]]
-[[ArrayList¥¯¥é¥¹:http://www.javadrive.jp/start/arraylist/index1.html]]
¤³¤³¤Ç¤Î¼ºÇÔ~
pair2¤òºî¤ë¤Î¤¬áû¤À¤Ã¤¿¤Î¤Ç¡¢Æ±¤¸¥¤¥ó¥¹¥¿¥ó¥¹¤ò»È¤Ã¤Æ¡¢ÆâÍÆ¤ò¾Ã¤·¤Æ¡¢¤Ö¤É¤¦¤Ë¤â»È¤¤¤Þ¤ï¤½¤¦¤È»×¤Ã¤¿¤Î¤À¤¬¡¢
ArrayList<Integer> pair = new ArrayList<Integer>();
pair.add(1); pair.add(3);
map.put("¤ê¤ó¤´", pair);
pair.clear(); <<--- pair¤òºÆÍøÍѤ¹¤ë¡Ê¥ê¥¹¥È¤ò¶õ¤Ë¤·¤Æ¡Ë
pair.add(5); pair.add(6);
map.put("¤Ö¤É¤¦", pair);
¤³¤ì¤Ï¡¢ÅöÁ³¥À¥á¡£map¤ÎÆâÍÆ¤Ï¥Ý¥¤¥ó¥¿¤À¤±¤Ç¡¢¤½¤ÎÀè¤Ï£±¤Ä¤·¤«¤Ê¤¤pair¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤Ë¸þ¤¤¤Æ¤¤¤ë¤«¤é¡¢¤ê¤ó¤´¤ÎÊý¤âÃͤÏ(5, 6)¤Ë¤Ê¤Ã¤Æ¡¢¥Á¥ã¥ó¥Á¥ã¥ó¡£¤¢¤Þ¤ê¤Ëñ½ã¤Ê´Ö°ã¤¤¡£
¤È¤¤¤¦¤ï¤±¤Ç¡¢Ê̤Υ¤¥ó¥¹¥¿¥ó¥¹pair2¤¬É¬ÍפÀ¤Ã¤¿¡£¡Ê¤«¡¢¥³¥Ô¡¼¤·¤Æ¥¤¥ó¥¹¥¿¥ó¥¹¤òºî¤êľ¤¹¤«¡Ë
¤¸¤ã¤¢¡¢new¤Çºî¤ì¤Ð¤¤¤¤¤ó¤Ç¤·¤ç¡¢¤È¤¤¤¦¤Î¤Ï¡¢
ArrayList<Integer> pair = new ArrayList<Integer>();
pair.add(1); pair.add(3);
map.put("¤ê¤ó¤´", pair);
ArrayList<Integer> pair = new ArrayList<Integer>(); <<<---ºî¤ê¤Ê¤ª¤¹
pair.add(5); pair.add(6);
map.put("¤Ö¤É¤¦", pair);
¥³¥ó¥Ñ¥¤¥ë»þ¤Ë¥À¥á¡£
testHashMap.java:12: ¥¨¥é¡¼: ÊÑ¿ô pair¤Ï¤¹¤Ç¤Ë¥á¥½¥Ã¥É main(String[])¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹
ArrayList<Integer> pair= new ArrayList<Integer>();
^
**²ò·èÊÔ¡¡¡Ê2015-04-06) [#jfc3f0c3]
¤³¤Î¼ê¤¬¤¢¤Ã¤¿¡££²¤Ä¤Î¥Ý¥¤¥ó¥È¡£Íפ¹¤ë¤Ëpair¤È¤¤¤¦Ì¾Á°¤ò¤Ä¤±¤¿¤¯¤Ê¤¤¤Î¤À¤«¤é¡¢put¤Î°ú¿ô¤È¤·¤Ænew¤òľÀܤ˽ñ¤¤¤Æ¤·¤Þ¤¤¤¿¤¤¡£new¤Ç¸Æ¤Ð¤ì¤ë¥³¥ó¥¹¥È¥é¥¯¥¿¤Ë¡¢¥ê¥¹¥ÈÍ×ÁǤÎÃͤòÍ¿¤¨¤Æ¡¢ArrayList¤òºî¤ê¤¿¤¤¡£
¤³¤ó¤Ê¥Ú¡¼¥¸¤ò»²¾È¤·¤Þ¤·¤¿¡£¡¡¡¡[[Java¸À¸ì¤Ç¸ÇÄêÍ×ÁǤÎList¤ò½é´ü²½¤¹¤ëºÝ¤Î¥¤¥Ç¥£¥ª¥à:http://d.hatena.ne.jp/ryoasai/20101226/1293350856]]¡£
import java.lang.reflect.*;
import java.util.*;
class testHashMap2 {
public static void main(String args[]){
HashMap<String,List<Integer>> map = new HashMap<String,List<Integer>>();
map.put("¤ê¤ó¤´", new ArrayList<Integer>(Arrays.asList(1,3)));
map.put("¤Ö¤É¤¦", new ArrayList<Integer>(Arrays.asList(5,6)));
if (map.containsKey("¤ê¤ó¤´")){
System.out.print("¤ê¤ó¤´=>");
System.out.println(map.get("¤ê¤ó¤´"));
}else{
System.out.println("»ØÄꤷ¤¿¥¡¼¤Ï¸ºß¤·¤Þ¤»¤ó");
}
}
}
**Excel¤Î¥»¥ë¤ÎÆâÍÆ¤ò¼è¤ê½Ð¤¹¥×¥í¥°¥é¥à¤ÎÎã [#i713cbc3]
import java.io.FileInputStream;
import java.io.InputStream;
import java.lang.reflect.*;
import java.util.*;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
public class ExtractMapEntries {
public static void main(String[] args) throws Exception {
if (args.length != 1) {
System.out.println("°ú¿ô¤Î¸Ä¿ô¤Ï£±¤Ä¤Ë¤·¤Æ¤¯¤À¤µ¤¤");
System.exit(0);
}
InputStream is = new FileInputStream(args[0]);
Workbook wb = WorkbookFactory.create(is);
Sheet sheet = wb.getSheetAt(0);
HashMap<String,List<Integer>> map = new HashMap<String,List<Integer>>();
for (Row row:sheet) { // Á´Éô¤Î¹Ô¤ò¤Ê¤á¤ë
for (Cell cell:row) {// Á´Éô¤Î¥»¥ë¤ò¤Ê¤á¤ë
// System.out.print(String.valueOf(cell.getRowIndex()) + '-' + String.valueOf(cell.getColumnIndex()));
// System.out.println(cell.getStringCellValue()); //¤³¤ó¤ÊÉ÷¤Ë°õºþ¤Ç¤¤ë
Integer R = Integer.valueOf(cell.getRowIndex()); // R¤È¤«C¤Ë¼è¤ê½Ð¤¹É¬Íפâ̵¤¤¤Î¤À¤¬Ä¹¤¯¤Ê¤ë¤Î¤Ç
Integer C = Integer.valueOf(cell.getColumnIndex());
String V = cell.getStringCellValue();
map.put(V, new ArrayList<Integer>(Arrays.asList(R,C)));
}
}
//map¤ÎÆâÍÆ¤òÁ´Éô½ñ¤½Ð¤¹¡£keSet¤ò¥¤¥Æ¥ì¡¼¥¿¤Î¤è¤¦¤Ë»È¤Ã¤Æ¡£
for (String key : map.keySet()) {
System.out.println("[" + key + "]" + " " + Integer.toString((map.get(key)).get(0)) + " " + Integer.toString((map.get(key)).get(1)) );
// map¤«¤éget(key)¤·¤¿ÆâÍÆ¤Ï£²Í×ÁǤÎList¤Ê¤Î¤Ç¡¢¤½¤ÎÍ×ÁÇ(0)¤È(1)¤ò¼è¤ê½Ð¤¹¡£
// Í×ÁǤÏInteger¤Ê¤Î¤Ç¡ÊList¤Ë¤¹¤ë»þ¤Ëint¤Ç¤Ï¤Ê¤¯¤ÆInteger¤Ë¤·¤¿¡ËtoString¤ÇString·¿¤Ë¤¹¤ë
}
}
}
½èÍý·ë²Ì¤Î¥¤¥á¡¼¥¸¤Ï¡¢¤³¤ó¤Ê´¶¤¸¤Ë¤Ê¤Ã¤¿¡£
[] 172 20
[Êü¼ÍÀþÀ¸Êª³Ø] 119 14
[¼Â¸³Æ°Êª³Ø¼Â½¬] 162 16
[¡¦Ê¸Íý·Ï¤òͤ¨¤ÆÉáÊ×Ū¤Ê¡ÖÃΡפò¹½ÃÛ¤¹¤ëǽÎϤò] 8 4
[ʬÀϲ½³Ø] 90 8
[ʪÍý³Ø¼Â¸³] 148 16
[¡¦Â¾¼Ô¤ËÂФ¹¤ë´Ø¿´¤ä¼Ò²ñ¤Îư¤¤Ê¤É¡¢¹â¤¤ÃÎŪ] 10 4
[µ¡´ïʬÀϲ½³Ø] 150 16
[±Ñ¸ìA£´] 34 8
[²ÊÌÜ·²¤Ç¿È¤Ë¤Ä¤±¤ëǽÎÏ] 83 4
[±Ñ¸ìB£´] 34 12
[±Ñ¸ìB£³] 33 12
[ʬ»ÒÀ¸Êª³Ø] 97 10
[ʬ»ÒÀ¸Íý³Ø] 147 16
[¿ôÍý²Ê³ØÆÃÏÀB£²] 25 12
[¿¢ÊªÀ¸Íý I] 106 8
[·ÏÅýÀ¸Êª³Ø] 106 6
[͵¡Ê¬ÀÏË¡] 150 14
[ʬ»Ò°äÅÁ³Ø] 96 16
[ÎϤò¿È¤Ë¤Ä¤±¤ë¡£] 59 4
[³¤³°Âθ³¥×¥í¥°¥é¥à¶] 73 6
[³¤³°Âθ³¥×¥í¥°¥é¥àµ] 72 6
[²Ê³ØÅ¯³Øµ] 18 6
[´ðÁÃÀ¸Êª³Ø] 107 6
[Îò»Ë³Øµ] 11 6
[´ðÁÃÀ¸Íý³Ø] 147 8
[Îò»Ë³Ø¶] 11 8
[À¸ÊªÊ¬»Ò²Ê³Ø¼Â¸³ II] 137 10
[Î×¾²·ì±Õ³Ø¼Â½¬] 156 20
[¶µÍܶµ°é²ÊÌÜ] 8 0
[À¸ÊªÌµµ¡²½³Ø] 87 12
[£±Ç¯¼¡] 83 6
[À¸²½³Ø II] 96 12
[À¸ÊªÊ¬»Ò²Ê³ØÆÃÏÀ III] 130 16
[À¸ÊªÊ¬»Ò²Ê³Ø¼Â¸³ IV] 138 10
[·ì±Õ³Ø] 156 14
[¿¿ô¤Î²½³ØÈ¿±þ¤Î½¸ÀѤǤ¢¤ëÀ¸Ì¿¸½¾Ý¤Ë¤Ä¤¤¤ÆÍý²ò¤ò¿¼¤á¤ë¤¿¤á¤Ë¡¢½éǯ¼¡¤Ç¤ÏÀìÌçʬ Ìî¤Î´ðÁóØÎϤ䥹¥¥ë¤ò½¤ÆÀ¤·¡¢£²¡Á£³Ç¯¼¡¤Ç¤Ï¿ºÌ¤Ê¼Â¸³²ÊÌܤȹâÅÙ¤ÊÀìÌç²ÊÌܤò½¤ÆÀ¤¹¤ë¡££´Ç¯¼¡¤Ç¤Ï¿È¤Ë¤Ä¤±¤¿ÀìÌçÃμ±¤È¥¹¥¥ë¤ò¤â¤È¤Ë´¶È¸¦µæ¤Ë¤è¤Ã¤ÆÌäÂê²ò·èǽÎϤò¿È¤Ë¤Ä ¤±¤ë¡£] 1 0
[ÃϳØ] 128 10
[À¸ÊªÊ¬»Ò²Ê³Ø²Ê] 0 16
[ɸ¶ÈùÀ¸Êª³Ø] 153 16
[¥¥ã¥ê¥¢¥Ç¥¶¥¤¥ó·] 63 12
[£³Ç¯¼¡] 83 14
¥Ú¡¼¥¸Ì¾: