2011. 4. 21. 18:07

public String addComma(long num)
 {
  DecimalFormat decimalFormat = new  DecimalFormat("#,###");
  return decimalFormat.format(num);
 }
    
1234567890을 넣으면 1,234,567,890이 되어 나옴

    public static String addDash(String noStr)
    {
     Pattern tellPattern = Pattern.compile( "^(01\\d{1}|02|0\\d{1,2})-?(\\d{3,4})-?(\\d{4})");
        if(noStr == null)
        {
         return noStr;
        }
        noStr = noStr.trim();
        Matcher matcher = tellPattern.matcher( noStr);
        if(matcher.matches())
        {
            return matcher.group( 1) + "-" + matcher.group( 2) + "-" + matcher.group( 3);
        }
        else
        {
            return noStr;
        }
    }

01012345678 을 넣으면 010-2345-6789가 되어 나옴

토나오는 정규식

'자바' 카테고리의 다른 글

JSON 배열 만들고 파싱하기  (2) 2011.04.12
배열정렬 Comparator  (1) 2011.03.31
간단한 쓰레드 예제  (0) 2011.03.11
암호화/복호화  (0) 2011.03.11
Posted by newkie
2011. 4. 12. 11:09


JSONObject jObject = new JSONObject();
JSONArray jArray = new JSONArray();//배열이 필요할때

for (i=0;i>10;i++)//배열
  {
    JSONObject sObject = new JSONObject();//배열 내에 들어갈 json
    try
    {
      sObject.put("title","title");
      sObject.put("count", i);
      jArray.put(sObject);
    }
    catch (JSONException e)
    {
      log("Data json err : " + e.getMessage());
    }
}
try
{
  jObject.put("id", "newkie");
  jObject.put("datas", jArray);//배열을 넣음
}
catch (JSONException e)
{
  log("Data json err : " + e.getMessage());
}
jstring = jObject.toString();



이런식으로 하면 jstring이 {"id":"newkie","datas":[{"title":"title","count":0}.....]} 이렇게 나옴



이걸 다시 파싱



try
  {
   //받은데이터 파싱
   jObject = new JSONObject(jstring);
   
   id = jObject.getString("id");
   Log.d("id", id);
   
   JSONArray datas = jObject.getJSONArray("datas");
   int size = datas.length();
   Log.i("size", String.valueOf(size));
   
   for(int i=0; i<size; i++)
   {
    
    title = datas.getJSONObject(i).getString("title");
    Log.d("title", title);
    
    count = datas.getJSONObject(i).getString("count");
    Log.d("count", count);
    
    Title p = new Title(title,count);//지정해둔 getClass

    titlelist.add(p);리스트에 추가
       
   }
  }
  catch (Exception e)
  {
   e.getMessage()
  }


대충 이런식.

'자바' 카테고리의 다른 글

돈에 ,찍기나 전화번호에 -찍는 등의 정규식.  (0) 2011.04.21
배열정렬 Comparator  (1) 2011.03.31
간단한 쓰레드 예제  (0) 2011.03.11
암호화/복호화  (0) 2011.03.11
Posted by newkie
2011. 3. 31. 10:21

class timeComparator implements Comparator {
       public int compare(Object o1, Object o2) {
         String en1 = ((A)o1).d;
         String en2 = ((A)o2).d;
         return en1.compareTo(en2); // ascending 정렬
       }
    }

하고 정렬할 리스트에 아래 문장을 넣어줌

Collections.sort(list, new timeComparator());

'자바' 카테고리의 다른 글

돈에 ,찍기나 전화번호에 -찍는 등의 정규식.  (0) 2011.04.21
JSON 배열 만들고 파싱하기  (2) 2011.04.12
간단한 쓰레드 예제  (0) 2011.03.11
암호화/복호화  (0) 2011.03.11
Posted by newkie
2011. 3. 11. 16:46

     new Thread(new Runnable()
     {
      @Override
      public void run()
      {
       Send();
      }
     }).start();

'자바' 카테고리의 다른 글

돈에 ,찍기나 전화번호에 -찍는 등의 정규식.  (0) 2011.04.21
JSON 배열 만들고 파싱하기  (2) 2011.04.12
배열정렬 Comparator  (1) 2011.03.31
암호화/복호화  (0) 2011.03.11
Posted by newkie
2011. 3. 11. 14:21


package com.newkie;

import java.security.SecureRandom;

import javax.crypto.Cipher; 
import javax.crypto.KeyGenerator; 
import javax.crypto.SecretKey; 
import javax.crypto.spec.SecretKeySpec;

public class AESCrypto
{
 private static AESCrypto instance = null;
 public static AESCrypto getInstance()
 {
  if(instance == null)
  {
   instance = new AESCrypto();
  }
  return instance;
 }
 
 public String encrypt(String masterPassword, String clearText)
 throws Exception
 {
  byte[] rawKey = getRawKey(masterPassword.getBytes());
  byte[] result = encrypt(rawKey, clearText.getBytes());
  return toHex(result);
 }
 
 public String decrypt(String masterPassword, String encrypted)
 throws Exception
 {
  byte[] rawKey = getRawKey(masterPassword.getBytes());
  byte[] enc = toByte(encrypted);
  byte[] result = decrypt(rawKey, enc);
  return new String(result);
 }

 private byte[] getRawKey(byte[] seed)
 throws Exception
 {
  KeyGenerator kgen = KeyGenerator.getInstance("AES");
  SecureRandom sr = SecureRandom.getInstance("SHA1PRNG");
  sr.setSeed(seed);
     kgen.init(128, sr);
     SecretKey skey = kgen.generateKey();
     return skey.getEncoded();
 }
 
 private byte[] encrypt(byte[] raw, byte[] clear)
 throws Exception
 {
     SecretKeySpec skeySpec = new SecretKeySpec(raw, "AES");
  Cipher cipher = Cipher.getInstance("AES");
     cipher.init(Cipher.ENCRYPT_MODE, skeySpec);
     byte[] encrypted = cipher.doFinal(clear);
  return encrypted;
 }

 private byte[] decrypt(byte[] raw, byte[] encrypted)
 throws Exception
 {
     SecretKeySpec skeySpec = new SecretKeySpec(raw, "AES");
  Cipher cipher = Cipher.getInstance("AES");
     cipher.init(Cipher.DECRYPT_MODE, skeySpec);
     byte[] decrypted = cipher.doFinal(encrypted);
  return decrypted;
 }
 
 public byte[] toByte(String hexString)
 {
  int len = hexString.length()/2;
  byte[] result = new byte[len];
  for (int i = 0; i < len; i++)
  {
   result[i] = Integer.valueOf(hexString.substring(2*i, 2*i+2), 16)
     .byteValue();
  }
  return result;
 }

 public String toHex(byte[] buf)
 {
  if (buf == null || buf.length == 0)
  {
   return "";
  }
  StringBuffer result = new StringBuffer(2*buf.length);
  
  for (int i = 0; i < buf.length; i++)
  {
   appendHex(result, buf[i]);
  }
  return result.toString();
 }
 
 private final static String HEX = "0123456789ABCDEF";
 private void appendHex(StringBuffer sb, byte b)
 {
  sb.append(HEX.charAt((b>>4)&0x0f)).append(HEX.charAt(b&0x0f));
 }
}





AESCrypto ae = new AESCrypto.getInstance();
ae.encrypt(newkie,pw);//암호화

ae.decrypt(newkie,pw);//복호화

'자바' 카테고리의 다른 글

돈에 ,찍기나 전화번호에 -찍는 등의 정규식.  (0) 2011.04.21
JSON 배열 만들고 파싱하기  (2) 2011.04.12
배열정렬 Comparator  (1) 2011.03.31
간단한 쓰레드 예제  (0) 2011.03.11
Posted by newkie