作業部屋の使い方を試しています。
(empty log message)
| @@ -58,7 +58,7 @@ | ||
| 58 | 58 | public class SearchDataRW { |
| 59 | 59 | |
| 60 | 60 | DocumentBuilder builder; |
| 61 | - Document document; | |
| 61 | + public Document document; | |
| 62 | 62 | Element root; |
| 63 | 63 | |
| 64 | 64 | private final String splitchar = "\t"; |
| @@ -98,7 +98,11 @@ | ||
| 98 | 98 | */ |
| 99 | 99 | public void save(File file) { |
| 100 | 100 | //saveCsv(file); |
| 101 | - saveXml(file); | |
| 101 | + //saveXml(file); | |
| 102 | + | |
| 103 | + saveUrl(UrlAdress); | |
| 104 | + saveSearchList(slist); | |
| 105 | + write(file); | |
| 102 | 106 | } |
| 103 | 107 | |
| 104 | 108 | /** |
| @@ -107,9 +111,14 @@ | ||
| 107 | 111 | */ |
| 108 | 112 | public void load(File file) { |
| 109 | 113 | //loadCsv(file); |
| 110 | - loadXml(file); | |
| 114 | + //loadXml(file); | |
| 115 | + | |
| 116 | + read(file); | |
| 117 | + UrlAdress = loadUrl(); | |
| 118 | + slist = loadSearchList(); | |
| 111 | 119 | } |
| 112 | 120 | |
| 121 | + /* ---------------------------------------------------------------------- */ | |
| 113 | 122 | /** |
| 114 | 123 | * 保存(CSV形式). |
| 115 | 124 | * @param file |
| @@ -184,6 +193,7 @@ | ||
| 184 | 193 | |
| 185 | 194 | } |
| 186 | 195 | |
| 196 | + /* ---------------------------------------------------------------------- */ | |
| 187 | 197 | /** |
| 188 | 198 | * 保存(XML形式). |
| 189 | 199 | * @param file |
| @@ -314,6 +324,7 @@ | ||
| 314 | 324 | } |
| 315 | 325 | } |
| 316 | 326 | |
| 327 | + /* ---------------------------------------------------------------------- */ | |
| 317 | 328 | |
| 318 | 329 | public String loadUrl() { |
| 319 | 330 | String urladdress; |
| @@ -383,6 +394,13 @@ | ||
| 383 | 394 | return slist; |
| 384 | 395 | } |
| 385 | 396 | |
| 397 | + public Element loadElement(String elementTagName) { | |
| 398 | + NodeList nodelist = root.getElementsByTagName(elementTagName); | |
| 399 | + Element element = (Element)nodelist.item(0); | |
| 400 | + | |
| 401 | + return element; | |
| 402 | + } | |
| 403 | + | |
| 386 | 404 | public void saveUrl(String urladdress) { |
| 387 | 405 | checkdoc(); |
| 388 | 406 | removeElement("url"); // 既にElementが存在してた場合、一度削除 |
| @@ -412,6 +430,13 @@ | ||
| 412 | 430 | } |
| 413 | 431 | } |
| 414 | 432 | |
| 433 | + public void saveElement(Element element) { | |
| 434 | + checkdoc(); | |
| 435 | + removeElement(element.getTagName()); // 既にElementが存在してた場合、一度削除 | |
| 436 | + | |
| 437 | + root.appendChild(element); | |
| 438 | + } | |
| 439 | + | |
| 415 | 440 | private void addChild(Element cslist, String keyword, String data) { |
| 416 | 441 | if(!data.isEmpty()) { |
| 417 | 442 | Element element = document.createElement(keyword); |
| @@ -428,7 +453,12 @@ | ||
| 428 | 453 | } |
| 429 | 454 | } |
| 430 | 455 | |
| 431 | - private void checkdoc() { | |
| 456 | + /** | |
| 457 | + * ドキュメントチェック. | |
| 458 | + * 新規の場合やXMLファイルの読込みが行われていない状態時、新たにルートエレメントを作成する。 | |
| 459 | + * 既読の場合、ルートエレメントの取得を行う。 | |
| 460 | + */ | |
| 461 | + public void checkdoc() { | |
| 432 | 462 | if(document == null) { |
| 433 | 463 | DOMImplementation domImpl = builder.getDOMImplementation(); |
| 434 | 464 | document = domImpl.createDocument("","searchdata",null); |