2009-06-10

[Java] Hello World

Java First Program
public class HelloWorld
{
 public static void main(String[] args)
 {
   System.out.println("Hello World");
 }
}

2009-06-09

[Python] 모바일용 PNG 검사

국내 이통사의 모바일폰 서비스에 PNG 이미지를 사용한다. KTF, LGT는 큰 문제가 없지만 SKT 일부 폰에서 PNG 이미지 출력에 문제가 있다. 원인은 PNG 내부의 IDAT 헤더가 2개 이상인 경우 발생한다. 이에 PNG 내부의 IDAT 헤더를 1개로 줄여주는 프로그램을 사용하면 문제는 해결된다. 그러나 이미지가 수십개 수백개 이상되는데 일일이 열어서 확인할 수 없어 Python으로 간단하게 코드를 만들어봤다.
# -*- coding: cp949 -*-
import os

for root, dirs, files in os.walk(r"C:\temp"):
    for png_file in files:
        if png_file.find(".png") > -1:
            print "check file : " + png_file
            try:
                #rb로 열어야 한다.
                fp = open(root + "\\" + png_file, "rb")
                png_data = fp.read()
                if png_data.count("IDAT") >= 2:
                    print "> find IDAT 2 MORE png : " + png_file
                else:
                    print "> mobile ok" + png_file
            finally:
                if fp != None:
                    fp.close()
                fp = None
                png_data = None
        else:
            print "not png file : " + png_file

2009-05-19

 
javascript:void(0)