ユーザ用ツール

サイト用ツール


programming:java

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
programming:java [2013/08/20 01:58] dotprogramming:java [2015/06/17 05:20] (現在) – 外部編集 127.0.0.1
行 1: 行 1:
 ====== Java ====== ====== Java ======
  
-===== 環境変数 =====+===== 環境変数の参照 =====
  
 <file java Getenv.java> <file java Getenv.java>
行 27: 行 27:
 </file> </file>
  
-===== プロパティファイル =====+===== ファイル入出力 ===== 
 + 
 +<file java FileInputOutput.java> 
 +import java.io.FileInputStream; 
 +import java.io.InputStreamReader; 
 +import java.io.BufferedReader; 
 + 
 +import java.io.FileOutputStream; 
 +import java.io.OutputStreamWriter; 
 +import java.io.BufferedWriter; 
 +import java.io.PrintWriter; 
 + 
 +import java.io.IOException; 
 + 
 +public class FileInputOutput { 
 +    public static void main(String[] args) { 
 +        try { 
 +            String input = "unko.txt"; 
 +            String inputEncoding = "UTF-8"; 
 + 
 +            String output = "unko2.txt"; 
 +            String outputEncoding = "UTF-8"; 
 + 
 +            BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(input), inputEncoding)); 
 +            PrintWriter pw = new PrintWriter(new BufferedWriter(new OutputStreamWriter(new FileOutputStream(output), outputEncoding)));  
 + 
 +            String line = ""; 
 +            while ((line = br.readLine()) != null) { 
 +                pw.println(line); 
 +            } 
 +            br.close(); 
 +            pw.close(); 
 +        } catch (IOException e) { 
 +            e.printStackTrace(); 
 +        } 
 +    } 
 +
 +</file> 
 + 
 +===== プロパティファイルの読み込み =====
  
 <file java PropertyFile.java> <file java PropertyFile.java>
行 48: 行 87:
 } }
 </file> </file>
- 
  
 <file ini application.ini> <file ini application.ini>
行 55: 行 93:
 </file> </file>
  
 +
 +===== XPathでXMLの読み込み =====
 +
 +<file java UseXPath.java>
 +
 +import javax.xml.xpath.XPath;
 +import javax.xml.xpath.XPathConstants;
 +import javax.xml.xpath.XPathExpressionException;
 +import javax.xml.xpath.XPathFactory;
 +
 +import org.w3c.dom.Node;
 +import org.w3c.dom.NodeList;
 +import org.xml.sax.InputSource;
 +
 +public class UseXPath{
 +    public static void main(String args[]){
 +        XPath xpath = XPathFactory.newInstance().newXPath();
 +        InputSource inputSource = new InputSource("test.xml");
 +        String expression = "//test/unko[@id='hello']";
 +
 +        try {
 +            NodeList nodes = (NodeList) xpath.evaluate(expression, inputSource, XPathConstants.NODESET);
 +            for (int i = 0; i < nodes.getLength(); i++) {
 +                Node node = nodes.item(i);
 +                String str = node.getTextContent();
 +                System.out.println(str);
 +            }
 +        } catch (XPathExpressionException e) {
 +            e.printStackTrace();
 +        }
 +    }
 +}
 +</file>
 +
 +<file xml test.xml>
 +<?xml version="1.0" encoding="UTF-8"?>
 +<test>
 +  <unko id="hello">001</unko>
 +  <unko id="world">002</unko>
 +</test>
 +</file>
 +
 +===== 正規表現を用いたパターンマッチ =====
 +
 +<file java RegexPatternMatch.java>
 +import java.util.regex.Matcher;
 +import java.util.regex.Pattern;
 +
 +public class RegexPatternMatch{
 +    public static void main(String[] args) {
 +        String str = "Hello, World";
 +
 +        Matcher matcher = Pattern.compile("(.+?), (.+?)$").matcher(str);
 +        if (matcher.find()){
 +            System.out.println(matcher.group(1)); //Hello
 +            System.out.println(matcher.group(2)); //World
 +        }
 +    }
 +}
 +</file>
 +
 +===== 正規表現を用いた文字列置換 =====
 +
 +<file java RegexReplaceString.java>
 +import java.util.regex.Pattern;
 +
 +public class RegexReplaceString{
 +    public static void main(String[] args) {
 +        String str = "Hello, unko";
 +
 +        // unko -> World
 +        System.out.println(Pattern.compile("(unko)$").matcher(str).replaceFirst("World"));
 +
 +        // unko -> World
 +        System.out.println(str.replaceAll("(unko)$", "World"));
 +    }
 +}
 +</file>
  
 ===== 拡張子指定ファイル一覧 ===== ===== 拡張子指定ファイル一覧 =====
行 81: 行 197:
 </file> </file>
  
-===== 配列のシャローコピー(参照のコピー) =====+===== シャローコピー(参照のコピー)による配列長の拡張 =====
  
 <file java ArrayCopy.java> <file java ArrayCopy.java>
行 93: 行 209:
         String[] new_array = new String[array.length+1];         String[] new_array = new String[array.length+1];
                  
-        //「array」の「0」番目から「array.length」分を「new_array」の「0」番目以降にコピーする+        //「array(引数1)」の「0(引数2)」番目から「array.length(引数5)」分を「new_array(引数3)」の「0(引数4)」番目以降にコピーする
         System.arraycopy(array, 0, new_array, 0, array.length);         System.arraycopy(array, 0, new_array, 0, array.length);
                  
行 110: 行 226:
 } }
 </file> </file>
 +
 +===== 出力改行コードの指定 =====
 +
 +<file java NewLineCode.java>
 +public class NewLineCode{
 +    public static void main(String args[]){
 +        //Linux,MacOSX : "\n"
 +        //Windows : "\r\n"
 +        System.setProperty("line.separator", "\n");
 +        System.out.println("Hello");
 +    }
 +}
 +</file>
 +
 +
 +===== 型変換 =====
 +
 +<file java TypeCast.java>
 +public class TypeCast {
 +    public static void main(String args[]){
 +        int intType = 10;
 +        String stringType = "10";
 +
 +        // int -> String
 +        String a = Integer.toString(intType);
 +
 +        // String -> int
 +        int b = Integer.parseInt(stringType);
 +    }
 +}
 +</file>
 +
programming/java.1376963922.txt.gz · 最終更新: 2015/06/17 05:09 (外部編集)