메뉴 건너뛰기

imp

C#으로 만든 웹브라우저

박영식2007.07.18 17:08조회 수 3207댓글 0

  • 1
    • 글자 크기

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;


namespace IEBrowser
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            object o = null;
            // 홈 사이트로 이동
            //axWebBrowser1.GoHome();
            axWebBrowser1.Navigate("http://suritam9.woweb.net/www/seminar/ajax/map2level.htm", ref o, ref o, ref o, ref o);
        }


        private void btnGoBack_Click(object sender, EventArgs e)
        {
            // 뒤로 이동
            axWebBrowser1.GoBack();
        }


        private void btnGoFoward_Click(object sender, EventArgs e)
        {
            // 앞으로 이동
            axWebBrowser1.GoForward();
        }


        private void url_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                // 입력받은 url로 이동
                object o = null;
                axWebBrowser1.Navigate(url.Text, ref o, ref o, ref o, ref o);
            }
        }


        private void btnGo_Click(object sender, EventArgs e)
        {
            object o = null;


            // 입력받은 url로 이동
            axWebBrowser1.Navigate(url.Text, ref o, ref o, ref o, ref o);
        }
    }
}

박영식 (비회원)
  • 1
    • 글자 크기
IBM DEVELOPER WORKS 대학생 모니터 요원 모집 (by 박영식) C#으로 xml 파싱하기 (by 박영식)

댓글 달기

zbxe 작업일지(3일차)

[원문보기]
1. simple.php 제작
  - 보기 모드
  - '플래닝 보기' 페이지에 링크 추가
2. mashup 페이지 제작
  - 최근 게시글 출력(자신글, 관련글)

php XML파서

[원문보기]

<xml.php>

$file = "cultlife.xml";
function trustedFile($file)
{
// only trust local files owned by ourselves
if (!eregi("^([a-z]+)://", $file) && fileowner($file) == getmyuid())
{
return true;
}
return false;
}
function startElement($parser, $name, $attribs)
{
  print "&lt;<font color=#0000cc>$name</font>";
if (sizeof($attribs)) {
/*while (list($k, $v) = each($attribs)) {
print "<font color=#009900>$k</font><font color=#990000>$v</font>";
} */
}
print "&gt;";
}
function endElement($parser, $name)
{
print "&lt;/<font color=#0000cc>$name</font>&gt;<br>";
}
function characterData($parser, $data)
{
print "<b>$data</b>";
}
function PIHandler($parser, $target, $data)
{
switch (strtolower($target)) {
case "php":
global $parser_file;
// If the parsed document is "trusted", we say it is safe
// to execute PHP code inside it. If not, display the code
// instead.
if (trustedFile($parser_file[$parser])) {
eval($data);
} else {
printf("Untrusted PHP code: <i>%s</i>", htmlspecialchars
($data));
}
break;
}
}
function defaultHandler($parser, $data)
{
if (substr($data, 0, 1) == "&" && substr($data, -1, 1) == ";") {
printf('<font color="#aa00aa">%s</font>', htmlspecialchars
($data));
} else {
printf('<font size="-1">%s</font>', htmlspecialchars($data));
}
}
function externalEntityRefHandler($parser, $openEntityNames, $base,
$systemId,
$publicId)
{
if ($systemId) {
if (!list($parser, $fp) = new_xml_parser($systemId)) {
printf("Could not open entity %s at %sn", $openEntityNames,
$systemId);
return false;
}
while ($data = fread($fp, 4096)) {
if (!xml_parse($parser, $data, feof($fp))) {
printf("XML error: %s at line %d while parsing entity %
sn",
xml_error_string(xml_get_error_code($parser)),
xml_get_current_line_number($parser),
$openEntityNames);
xml_parser_free($parser);
return false;
}
}
xml_parser_free($parser);
return true;
}
return false;
}
function new_xml_parser($file) {
global $parser_file;
$xml_parser = xml_parser_create();
xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING, 1);
xml_set_element_handler($xml_parser, "startElement", "endElement");
xml_set_character_data_handler($xml_parser, "characterData");
xml_set_processing_instruction_handler($xml_parser, "PIHandler");
xml_set_default_handler($xml_parser, "defaultHandler");
xml_set_external_entity_ref_handler
($xml_parser, "externalEntityRefHandler");


if (!($fp = @fopen($file, "r"))) {
return false;
}
if (!is_array($parser_file)) {
settype($parser_file, "array");
}
$parser_file[$xml_parser] = $file;
return array($xml_parser, $fp);
}
if (!(list($xml_parser, $fp) = new_xml_parser($file))) {
die("could not open XML input");
}
print "<pre>";
while ($data = fread($fp, 4096)) {
if (!xml_parse($xml_parser, $data, feof($fp))) {
die(sprintf("XML error: %s at line %dn",
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
}
}
print "</pre>";
print "parse completen";
xml_parser_free($xml_parser);


<xmltest.xml>

<?xml version='1.0'?>
<!DOCTYPE chapter SYSTEM "/just/a/test.dtd" [
<!ENTITY plainEntity "FOO entity">
<!ENTITY systemEntity SYSTEM "xmltest2.xml">
]>
<chapter>
<TITLE>Title &plainEntity;</TITLE>
<para>
<informaltable>
<tgroup cols="3">
<tbody>
<row><entry>a1</entry><entry
morerows="1">b1</entry><entry>c1</entry></row>
<row><entry>a2</entry><entry>c2</entry></row>
<row><entry>a3</entry><entry>b3</entry><entry>c3</entry></row>
</tbody>
</tgroup>
</informaltable>
</para>
&systemEntity;
<sect1 id="about">
<title>About this Document</title>
<para>
<!-- this is a comment -->
<?php print 'Hi! This is PHP version '.phpversion(); ?>
</para>
</sect1>
</chapter>

<xmltest2.xml>

<?xml version="1.0"?>
<!DOCTYPE foo [
<!ENTITY testEnt "test entity">
]>
<foo>
<element attrib="value"/>
&testEnt;
<?php print "This is some more PHP code being executed."; ?>
</foo>

zbxe 작업일지(2일차)

[원문보기]
1. 레이아웃(plan) 생성 및 편집
  - 플래닝 페이지 용 레이아웃 등록
2. design.htm 생성 및 연결
  - 변수를 재활용 할 수 없으므로, iframe형태로 home.php를 로딩함
3. insert.php 작성
  - 커리어플랜(여러 인물 적용 가능) 및 기타 플랜 db삽입/삭제/열람 기능 연동

zbxe 작업일지

[원문보기]
1. 설치
2. /zbxe/widgets/login_info/skins/xe_official/login_form.html 수정
  - 오픈아이디만 사용할 수 있도록 수정함.
3. 플래닝 페이지를 외부 페이지 생성 메뉴를 이용해 등록
4. /zbxe/widgets/login_info/skins/xe_official/login_info.html 수정
  - 플래닝 페이지 링크 생성
5. create.php 생성
  - 해당 플랜에 대한 폴더를 생성하는 page
6. create.php에 unlink 추가
  - 해당 플랜 삭제시 이용 루틴(inst변수를 이용하여 식별)
7. syn_sch 파일 수정
  - 인코딩 문제가 발생하여 넘겨주는 변수와 내부 sql을 수정(숫자로 전송)

economist에 광고하는 Korea Air Line

[원문보기]
 금호 아시아나는 봉사활동 하던데......

 항공사들이 눈에 들어온다.

PSAT(Public Service Aptitude Test)

[원문보기]

공기업 채용때 PSAT 도입


 



[서울신문]이르면 올 하반기부터 공공기관 채용시험에도 공직적성평가(PSAT)가 도입될 전망이다.


또 PSAT와 같은 직무능력 검사 비중이 높아지고, 토익·토플 등 어학 성적 비중은 떨어진다.


기획예산처는 1일 이같은 내용의 ‘공공기관 채용방식 개선방안’을 마련, 올 하반기부터 적용한다고 밝혔다.


대상 기관은 우선 101개 공기업·준정부기관이며,197개 기타공공기관으로도 확대할 계획이다.


개선 방안에 따르면 어학 성적은 지원을 위한 최소한의 자격 기준으로만 활용된다. 어학시험 성적이 최종 합격의 결정적 기준이 되면 우수한 인재를 놓칠 수 있다는 판단에서다.


대신 직무능력검사가 도입되고, 면접이 강화된다. 특히 직무능력 검사과목으로는 PSAT 또는 PSAT와 유사한 모델이 검토되고 있다.


기획처 관계자는 “중앙인사위원회와 협의를 거쳐 이르면 올 하반기부터 희망 기관에 한해 PSAT를 활용할 수 있도록 지원할 계획”이라면서 “이와는 별도로 PSAT와 유사한 형태의 직무능력검사 모델 개발도 검토할 것”이라고 설명했다.


또 각 기관들은 국가 유공자, 장애인, 여성, 지방 인재 등에 대한 목표 채용 비율을 스스로 설정, 준수토록 할 방침이다. 이와 함께 오는 6월 말까지 각 기관들은 올 하반기 채용 규모·시기·방법 등의 정보를 ‘공공기관 경영정보 공개시스템’에 공개한다.


장세훈기자 shjang@seoul.co.kr


■ 용어 클릭


●PSAT(Public Service Aptitude Test) 공직 수행에 필요한 기본 지식과 소양, 자질 등을 평가하는 시험이다.2004년 외무고시 1차시험에 처음 적용됐으며, 올해부터 행정·외무·입법고시 등 모든 국가고시 1차 시험에도 채택됐다. 언어논리·자료해석·상황판단 등 3개 영역으로 구성돼 있다.

20대 CEO - 박이빛

[원문보기]





파코메리 여성CEO 초청 강연
'대한민국 20대의 꿈과 성공' 주제로 최연소 월스트리트 진출 여성CEO 박이빛씨 강연

㈜파코메리(대표 박형미)는 지난 10일, 교육계 최연소 여성 CEO이자 교육 컨텐츠 분야 여성 CEO 최초로 미국 월스트리트에 진출한 박이빛 씨를 초청 '대한민국 20대의 꿈과 성공'이라는 주제로 강연회를 가졌다.

전국 주요지역 31개 직영점장 및 사원 5백여명을 대상으로 열린 이번 강연회에서 박이빛 씨는 현 시대를 속도, 지식, 신뢰의 시대로 규정하면서 “내 분야가 아니더라도, 나는 내가 내 몸을 투자했을 때 승리를 맛보는 그 쾌락에 승부수를 던진다"며 "경영자는 반드시 자신이 무엇을 원하고 무엇을 원하지 않는가를 정당화할 필요는 없다. 그러나 강하게 원하게 될 때가 있다, 그 때 시작을 해야 뭐든 이뤄낼 수 있다”고 강조했다. 또한 “강하게 신념을 가지는 그것, 그것을 책임질 수 있다면 지금 당장 시작하라”고 주문했다.

또 사람을 다루고 사람을 경영하는 자신만의 생각에 대해 박이빛 씨는 그것을 ‘안전거리’라고 규정했다.

박 CEO는 “우리는 사람이기 때문에 누구나 실패를 할 수 있다고 생각하며 살아야 한다. 그래서 필요한 것이 맨 마지막에 물러설 수 있는 공간, 즉 안전거리를 꼭 확보해 놓아야 한다는 것이다. 맨 마지막에 정말 남는 것은 내 주변의 ‘사람’이다. 돈도 아니고 명예도 아니고 바로 사람이다. 진정한 사람을 곁에 두는 사람은, 돈과 명예가 탐나지 않는다. 그럴 때 비로소 성공 이란 것이 찾아온다.”고 역설했다.

박형미 사장은 박이빛 씨에 대해 “공정한 원칙과 룰 속에서 승부욕이 강하고 진정한 자신만의 투자 방법을 체득한 박이빛 씨야말로 파코메리가 추구하는 미래지향적 투명한 파코메리 시스템과 일치한다”고 소감을 밝혔다.

박이빛 씨는 연봉 2천4백만원의 학원 강사로 시작한 지 5년 만에 10억원의 연봉을 받는 교육분야 최초의 여성 CEO로서 자신의 이름을 건 이빛에듀 뉴욕지사를 지난 7월 7일 월스트리트 중심가에 오픈해 세간의 화제가 됐다

MS Imazine Cup

[원문보기]
















날짜/시간: 2008년 8월 3일 일요일 오전 10:00 - 2008년 8월 9일 토요일 오후 6:00
제품: 기타
대상 고객: 학생




이벤트 개요

Imagine Cup 2008에 사전등록하고 프랑스로 가자!!


2008년 8월 프랑스 파리에서 펼쳐질 Imagine Cup에 여러분을 초대합니다.


꿈과 열정을 가진 학생 여러분!! 2008
년 프랑스 파리에서 열리는 Imagine Cup에 참가해서 세계의 학생들과 실력을 겨루어 보면 어떨까요?

지금 Imagine Cup 프랑스 대회에서 사전등록을 하시면 경진이 시작되었을 때 이메일을 통해 일정과 경진 분야등을 알려드리는 것은 물론, Imagine Cup 뉴스레터를 통해 Imagine Cup 소식들을 전해드릴 예정입니다.

Imagine Cup에 참가해서 전세계의 학생들과 여러분들의 실력을 겨루어보고 프랑스 파리로 떠나는 행운도 잡아보시기 바랍니다.

Imagine Cup 2008 France에 지금 사전등록을 신청해주세요!!

===================================================
[Imagine Cup 2008 France 대회 개요]

온라인 예선 기간   : 2007년 9월 ~ 2008년 4월
세계대회 본선       : 2008년 8월 3일 ~ 9일
세계대회 본선 장소 : 프랑스 파리
===================================================

온라인 예선을 통과하여 최종 대회에 진출한 팀에게는 프랑스 파리에서 열리는 Imagine Cup 2008 France 대회에 출전하는 모든 경비를 마이크로소프트에서 지원해 드립니다.

세계의 학생들과 실력도 겨루고 글로벌 우정도 쌓을 수 있는 기회를 놓치지 마세요!!

상수 e에 대한 글

[원문보기]

 상수 e는 다음과 같은 과정에서 느닷없이 나타나기도 한다. (1) 0과 1사이에 있는 임의의 수를 선택한다. (2) 같은 구간에서 또 하나의 수를 선택하여 이전의 수에 더한다. (3) 동일한 과정을 반복한다. 이런 식으로 0과 1사이에서 임의로 선택된 수를 계속더해 나간다고 했을 때, 총합이 1보다 커지려면 평균적으로 몇 번을 더해야 할까? 답 : 2.718523... <리만 가설 중>


 수 e는 수학적 중요도로 볼 때 원주율(파이)와 대등하고, 통상 얌전한 영어 소문자로 쓰여져 친숙한 느낌을 주는, 하지만 그래도 그 속을 이해하기가 보통 쉽지 않은 자연로그의 밑수 e는 대략 그 값이 2.718281828459045235360287471352662497이다.
상수 e는 18세기 중엽에 스위스의 수학자 오일러가 처음으로 세상에 소개한 수이다. 상수 e에 대한 표준적 정의를 처음 접하는 사람에게는 그 정의가 약간 복잡하고 어렵게 보일지 모른다.

수 e는 '정수 N이 점점 커질 때, 일반항이
(1+1/N)^N
인 수열의 극한값'으로 정의된다. N이 2일 때, 위의 식은
(1+1/2)^2=(3/2)^2=2.25
가 된다. N이 3일 때 그것은
(1+1/3)^3=(4/3)^3=2.37
이고, N의 값이 연속적으로 커짐에 따라 차례로
(1+1/4)^3=(5/4)^3=2.44, (6/5)^5, (7/6)^6,......
이렇게 계속된다. 따라서 e는
(10,001/10,000)^10,000=2.718145
와 아주 가깝다. 또한 상수 e는
(1,000,001/1,000,000)^1,000,000
에 더 가깝다.

비록 정의가 추상적이기는 하지만 이와 같이 e를 정의하면, 우리는 은행의 서류나 복리계산에 빠짐없이 나오는 e의 중요한 역할을 눈치챌 수가 있다.
e는 자연로그 함수의 밑수이다. 이 말을 명확이 이해하려면 까다로운 로그에 대한 약간의 부연 설명이 필요하다. 예를 들어, 10의 제곱은 100이므로 100의 상용로그는 2이다. 10의 세제곱은 1000이므로 1000의 상용로그는 3이다. 그리고 10의 2.7제곱은 500이므로 상용로그는 2.7이다. [log(500)=2.7] 한편, 어떤 수의 자연로그는 그 수와 같아지는 e의 지수를 나타낸다. 따라서, e의 (6.9)제곱은 1000이므로 1000의 자연로그는 (6.9)가 된다. [ln(1000)=6.9] e의 (4.6)제곱은 100이므로 100의 자연로그는 (4.6)이고, e의 (0.7)제곱은 2이므로 2의 자연로그는 0.7이다. 특히 마지막 수 2의 자연로그인 (0.7)은 재정학에서 매우 중요하다. 상수 (0.7)을 당신이 받는 이율로 나눈 값이 바로 당신의 원금이 두 배가 되는 데 걸리는 년수가 된다. 따라서 이율이 10%(0.10)일 때 당신의 원금이 두 배가 되는 데 걸리는 년수는 7년(0.7을 0.1로 나눈값)이고, 이율이 14%이면 원금이 두 배가 되는 년수는 5년(0.7을 0.14로 나눈값)이다.
이제부터 상수 e가 연출하는 믿기지 않는 현상을 몇 가지만 살펴보자. 우선 부교수를 1명 채용하고자 N명의 후보를 면접해야 하는 S대학 M학과가 있는데, 그 학과는 아래의 3가지 면접 원칙을 가지고 있다고 하자.
첫째, 후보의 면접이 끝나는 즉시 당사자에게 채용 여부를 알린다.
둘째, 일단 면접에서 떨어진 사람을 다시 면접해서 채용할 수는 없다.
면접이 마지막 사람까지 가면 그는 자동적으로 채용된다.
이 3가지 면접 원칙으로 M학과는 과연 자신이 원하는 최선의 후보를 채용할 수 있을까? M학과가 최선의 후보를 채용할지 여부는 아무도 장담할 수 없다. 그러나 M학과는 자신이 원하는 최선의 호보를 채용할 수 있는 확률은 극대화할 수 있는데, 그 전략은 통상 다음과 같이 세워진다. 먼저 Kn 따라서 만약 40명의 후보를 무작위 순서로 면접한다면 최적의 전략은 즉석에서 40명의 37%인 처음 15명을 무조건 떨어뜨린 다음 그의 앞 사람 모두보다 더 나은 후보를 부교수로 채용하는 것이다. 이런 방법을 사용해서 최선의 후보를 채용하게 될 확률 또한 아주 이상하게 1/e 또는 약 37%이다. 어떤 전략도 37%보다 더 좋은 확률을 가져다 주진 않는다. 비록 전제 조건인 M학과의 면접 원칙에 부자연스러운 면이 없진 않지만, 배우자를 선택하기 위한 '맛선 보기'와 같은 유사한 문제들 역시 이와 동일한 접근법과 논법이 사용된다.
상수 e는 무리수(두 정수의 비로 나타낼 수 없기 때문에 비순환 무한소수)인 동시에 초월수(대수방정식의 근이 될 수 없는 수)이다. 그럼에도 불구하고 e는 중요한 수학공식과 정리에 매우 흔하게 나타난다. 수 e는 삼각함수, 기하학, 미분방정식, 무한급수, 해석학 등 무수히 많은 서로 다른 수학의 분야에서 항상 필수적으로 등장하는 참으로 신출귀몰하고 의미심장한 수이다.
(1998년 3월 21일 하창호)

~ : 틸드(tilde), | : 버티컬바(vertical bar), ^ : 서큠플렉스(Circumflex)
! : 익스클레메이션 포인트(Exclamaion Point) ` : 그레이브(Grave)

(주) KT - 아이디어 공모전에 도전할 것이다.

[원문보기]
복수 응시도 가능하므로, 내년에 5개 이상의 아이템을 공모한다.
지성이면 감천!

(주) 드림투리얼리티 - 전자책 솔루션기업

[원문보기]



















업무내용 및 상세자격요건
㈜드림투리얼리티는 전자문서통합포맷(확장명, csd)의 국산보급으로 국내 소프트웨어발전 뿐만아니라 아도비사의 PDF에 대응하는 혁신의 소프트웨어이며, 이미 국내 금융권과 공공기관에서 인증한 우수기술입니다.

당사는 국내뿐만아니라 세계시장(일본,중국,미국등)에 제품공급이 진행중에 있으며, 유비쿼터스 환경하의 모바일(휴대폰, 전자사전, PSP, PMP, PDA등)에서도 전자문서 볼 수 있는 획기적인 기술입니다.

㈜드림투리얼리티와 미래를 함께 할 인재를 모십니다.
http://www.d2r.co.kr , http://www.csdcenter.com

------------------------------
CSD 기술 적용 사이트
파란 더진 - http://zine.paran.com
한컴 유비튜브 - http://www.ubitube.com
KT BooKT - http://www.bookt.co.kr
------------------------------


모집부문
- 웹개발자 (내근직)


업무내용
- CSD 관련 웹서비스 개발


자격요건
- 웹사이트 구축에 대한 이해와 경험이 있으신 분
- HTML,JavaScript와 JSP,PHP,ASP등 하나 이상의 웹 프로그래밍 언어가 사용 가능하신 분
- 하나 이상의 데이터베이스에 대한 경험과 SQL 사용이 가능하신 분
- CSD를 사용해보신분 우대

제출서류 및 전형방법
제출서류
- 이력서, 자기소개서 각 1부
- 이력서에 긴급연락처, 희망연봉 기재 필수


상세요강 전형절차
- 1차 : 서류전형
- 2차 : 면접전형
- 3차 : 임원면접 및 연봉협상
- 면접은 서류전형 합격자에 한해 개별통보

근무조건
- 주 5일 근무 / 오전 10시 ~ 7시


자격 조건
- 2년제 대학 졸업자 이상
- 전산 전공자
- 해외 여행에 결격사유 없는 사람


회사 위치
경기도 성남시 분당구 구미동 153 로드랜드EZ타워 811호
(분당서 오리역 7번출구로 나와서 약 70미터 거리에 위치)

카길 코리아 - 비료, 식량 산업

[원문보기]
훌륭한 CEO와 안정적인 사업 구조

C#으로 네이버맵API에서 X,Y좌표 추출하기

[원문보기]


            string filePath = @"geocode.xml";
            XmlDocument xmlDocument = new XmlDocument();
            xmlDocument.Load(filePath);


            XmlElement xyinfo = xmlDocument.DocumentElement;
            XmlElement iteminfo = (XmlElement)xyinfo.ChildNodes[2];
            XmlElement pointinfo = (XmlElement)iteminfo.ChildNodes[0];
            XmlElement pointinfox = (XmlElement)pointinfo.ChildNodes[0];
            XmlElement pointinfoy = (XmlElement)pointinfo.ChildNodes[1];


            label2.Text = pointinfox.InnerText;
            label4.Text = pointinfoy.InnerText;


            string filePath2 = @"geocode2.xml";
            XmlDocument xmlDocument2 = new XmlDocument();
            xmlDocument2.Load(filePath2);


            XmlElement xyinfo2 = xmlDocument2.DocumentElement;
            XmlElement iteminfo2 = (XmlElement)xyinfo2.ChildNodes[2];
            XmlElement pointinfo2 = (XmlElement)iteminfo2.ChildNodes[0];
            XmlElement pointinfox2 = (XmlElement)pointinfo2.ChildNodes[0];
            XmlElement pointinfoy2 = (XmlElement)pointinfo2.ChildNodes[1];


            label5.Text = pointinfox2.InnerText;
            label6.Text = pointinfoy2.InnerText;

첫번째 아이템의 좌표 추출이다. 다음 아이템의 것을 추출하려면, xyinfo2.ChildNodes에서 3, 4로 이동하면서 찾으면 된다.

xml데이터 파싱을 이용한 chart

[원문보기]
Line chart
    <mx:Panel title="Line Chart">
        <mx:LineChart dataProvider="{myAC}" showDataTips="true">
            <mx:horizontalAxis>
                <mx:CategoryAxis dataProvider="{myAC}" categoryField="month"/>
            </mx:horizontalAxis>
            <mx:series>
                <mx:LineSeries yField="apple" displayName="Apple"/>
                <mx:LineSeries yField="orange" displayName="Orange"/>
                <mx:LineSeries yField="banana" displayName="Banana"/>
            </mx:series>
        </mx:LineChart>

Pie chart
<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" backgroundGradientColors="[#f7f794, #adb2ce]">
    <mx:Script><![CDATA[
        import mx.collections.ArrayCollection;
        import mx.utils.ArrayUtil;
    ]]></mx:Script>
    <!-- xml데이터 모델 소스 지정 -->
    <mx:Model id="myXML" source="data/data.xml"/>
 <!-- XML을 ArrayCollection 데이터로 변환 -->   
    <mx:ArrayCollection id="myAC" source="{ArrayUtil.toArray(myXML.result)}" />
    <mx:Panel title="Pie Chart - apple">
        <mx:PieChart dataProvider="{myAC}" showDataTips="true">
            <mx:series>
             <mx:Array>
                 <mx:PieSeries field="apple" labelPosition="inside"/>
             </mx:Array>
            </mx:series>
        </mx:PieChart>
    </mx:Panel>
    <mx:Panel title="Pie Chart - orange">
        <mx:PieChart dataProvider="{myAC}" showDataTips="true">
            <mx:series>
             <mx:Array>
                 <mx:PieSeries field="orange" labelPosition="inside"/>
             </mx:Array>
            </mx:series>
        </mx:PieChart>
    </mx:Panel>
    <mx:Panel title="Pie Chart - banana">
        <mx:PieChart dataProvider="{myAC}" showDataTips="true">
            <mx:series>
             <mx:Array>
                 <mx:PieSeries field="banana" labelPosition="inside"/>
             </mx:Array>
            </mx:series>
        </mx:PieChart>
    </mx:Panel>
</mx:Application>


[data.xml]
<data>
    <result month="1">
        <apple>20</apple>
        <orange>15</orange>
        <banana>11</banana>
    </result>
    <result month="2">
        <apple>18</apple>
        <orange>17</orange>
        <banana>23</banana>
    </result>
    <result month="3">
        <apple>18</apple>
        <orange>17</orange>
        <banana>23</banana>
    </result>
    <result month="4">
        <apple>11</apple>
        <orange>13</orange>
        <banana>9</banana>
    </result>
    <result month="5">
        <apple>8</apple>
        <orange>7</orange>
        <banana>3</banana>
    </result>
    <result month="6">
        <apple>11</apple>
        <orange>12</orange>
        <banana>21</banana>
    </result>
    <result month="7">
        <apple>20</apple>
        <orange>10</orange>
        <banana>13</banana>
    </result>
    <result month="8">
        <apple>18</apple>
        <orange>16</orange>
        <banana>29</banana>
    </result>
    <result month="9">
        <apple>28</apple>
        <orange>17</orange>
        <banana>22</banana>
    </result>
    <result month="10">
        <apple>18</apple>
        <orange>17</orange>
        <banana>3</banana>
    </result>
    <result month="11">
        <apple>3</apple>
        <orange>4</orange>
        <banana>9</banana>
    </result>
    <result month="12">
        <apple>1</apple>
        <orange>10</orange>
        <banana>13</banana>
    </result>                                       
</data>

IBM DEVELOPER WORKS 대학생 모니터 요원 모집

[원문보기]
http://www-128.ibm.com/developerworks/kr/news/inform/s_c/

IBM에서 운영하는 DW의 모니터 요원 2기 모집이다. 하고 싶다.

IBM DEVELOPER WORKS 대학생 모니터 요원 모집

[원문보기]
http://www-128.ibm.com/developerworks/kr/news/inform/s_c/

IBM에서 운영하는 DW의 모니터 요원 2기 모집이다. 하고 싶다.

C#으로 xml 파싱하기

[원문보기]

위와 같이 Windows 응용 프로그램으로 프로젝트를 생성한 뒤, 클래스뷰를 이용해 Form1.cs의 코드를 작성하면, 된다. 아래의 bold체는 차일드노드의 개수에 따라 전역변수 i를 증가시켜 파싱하여 label에 기록하는 부분이다. 



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;


using System.Xml;


namespace xmlparser
{
    public partial class Form1 : Form
    {
            int i = 0;
        public Form1()
        {
            InitializeComponent();


            string filePath = @"booklist.xml";
            XmlDocument xmlDocument = new XmlDocument();
            xmlDocument.Load(filePath);


            XmlElement eBooklist = xmlDocument.DocumentElement;


            XmlElement eFirstBook = (XmlElement)eBooklist.FirstChild;


            XmlNodeList nlchilds = eFirstBook.ChildNodes;


            label3.Text = "루트 엘리먼트 정보";
            label4.Text = eBooklist.Name;
        }


        private void button1_Click(object sender, EventArgs e)
        {
            string filePath = @"booklist.xml";
            XmlDocument xmlDocument = new XmlDocument();
            xmlDocument.Load(filePath);


            XmlElement eBooklist = xmlDocument.DocumentElement;


            XmlElement eFirstBook = (XmlElement)eBooklist.FirstChild;


            XmlNodeList nlchilds = eFirstBook.ChildNodes;



            if (nlchilds.Count > i)
            {
                XmlElement eChild = (XmlElement)nlchilds[i];
                label3.Text = eChild.Name + "(" + i + ")";
                label4.Text = eChild.InnerText + "(" + nlchilds.Count + ")";


                i++;
            }
            else
            {
                label3.Text = "자료의 수는" + nlchilds.Count + "개 입니다.";
                label4.Text = "자료의 끝 입니다";
            }


        }
    }
}

xsl(Extensible Stylesheet Language)의 활용

[원문보기]

아래 2개의 xsl파일을 참고하여, xml이 html로 변환된다.

[c8_1303.xsl]
<?xml version="1.0" encoding="euc-kr"?>
<xsl:stylesheet version="1.0"
               xmlns:xsl="http://www.w3.org/1999/XSL/Transform">


 <!-- 외부 XSL 문서 참조 -->
 <xsl:import href="c8_1302.xsl"/>


  <!-- 시작 템플레이트 룰 -->
 <xsl:template match="/">
  <html>
   <body>
    <h2><font color="blue">Our Book's List</font></h2>
    <table border="1" cellspacing="0" width="80%">
     <tr bgcolor="#FFFF66">
      <th>title</th>
      <th>author</th>
            <th>price</th>
     </tr>


     <!-- book 템플레이트 룰 적용 -->
     <xsl:apply-templates select="/booklist/book"/>


    </table>
   </body>
  </html>
 </xsl:template>


</xsl:stylesheet>

[c8_1302.xsl]
<?xml version="1.0" encoding="euc-kr"?>
<xsl:stylesheet version="1.0"
               xmlns:xsl="http://www.w3.org/1999/XSL/Transform">


  <!-- book 템플레이트 룰 -->
 <xsl:template match="book">
  <tr>
   <td><xsl:value-of select="title"/></td>
   <td><xsl:value-of select="author"/></td>
      <td>
        <xsl:value-of select="price"/>
      </td>
  </tr>
 </xsl:template>


</xsl:stylesheet>

대한적십자사 2006 사무직 채용공고

[원문보기]









'사랑에는 마침표가 없습니다.'


Love is boundless, so is the Red Cross.


 


| 모 집 공 고 |


 






 





 


 


 1. 모집부문 및 응시자격














계급

모집인원

모집부문

응시자격

6급

각 기관별
약간명

일반사무

- 1965년 10월 1일 이후 출생한 전문대학 이상 졸업자
- 2004년 9월 이후 응시한 TOEIC 700점 이상 또는 TEPS
   602점 이상자
- 최종학력(석사는 대학교) 성적 백분율 환산 80점 이상자













제대군인지원에관한법률 제2조에 의한 제대군인 및 병역법 제26조 제1항 제1호의 업무에 복무하고 소집해제된 공익근무요원(행정관서요원)이 시험에 응시할 경우에는 응시 상한 연령을 군복무기간에 따라 연장함
- 군복무기간 1년 미만은 1세, 1년 이상-2년 미만은 2세, 2년 이상은 3세 연장
남자는 군필 또는 면제자에 한하여 응시 가능
우대사항(관련 증빙서류 제출자에 한함)
- 취업보호대상자
- 30회 이상 헌혈한 자
- 고등학교 이상에서 RCY활동 3년 이상자
- 사회복지사(2급 이상) 자격증 소지자
- 수상안전법 강사 자격증 소지자
- 응급구조사(1급) 자격증 소지자
- 평생교육사(2급 이상) 자격증 소지자
- 청소년지도사(3급 이상) 자격증 소지자









2. 응시원서 접수처
































































접 수 기 관



주                  소



전 화 번 호


서  울  지  사


 서울특별시 성동구 마장동 523-1


 02-2290-6610


부  산  지  사


 부산광역시 부산진구 전포2동 607-1


 051-801-4002


대  구  지  사


 대구광역시 중구 달성동 145-2


 053-573-2452


인  천  지  사


 인천광역시 연수구 연수3동 581


 032-810-1311


울  산  지  사


 울산광역시 중구 성안동 872-5


 052-243-7921


경  기  지  사


 경기도 수원시 권선구 권선동 1015-6


 031-230-1612


강  원  지  사


 강원도 춘천시 중앙로1가 45


 033-255-9595


충  북  지  사


 충청북도 청주시 상당구 문화동 15


 043-253-2651


대전ㆍ충남지사


 대전광역시 중구 선화동 194-1


 042-254-7101


전  북  지  사


 전라북도 전주시 완산구 태평동 48-13


 063-280-5811


광주ㆍ전남지사


 광주광역시 북구 매곡동 256


 062-573-0541


경  북  지  사


 대구광역시 중구 남산2동 257


 053-252-9845


경  남  지  사


 경상남도 창원시 용호동 4-4


 055-263-4100


제  주  지  사


 제주도 제주시 용담1동 266-1


 064-758-3501







최종합격자는 희망근무지, 전공, 자격증, 직무적성검사 결과 등에 의하여 임용 배치





3. 전형방법 및 시행일정




























구   분

시 행 일

합격자 발표

비   고

서류전형

-

9.18(월) 14:00


우리사 홈페이지


직무적성검사

9.20(수) 10:00

9.22(금) 14:00


서류심사 합격자에 한함


면접시험

9.25(월) 10:00

9.27(수) 14:00


직무적성검사 합격자에 한함







4. 응시원서 접수






- 접수기간 : 2006. 9. 13(수) 13:00 - 9. 16(토) 16:00까지
- 응시원서, 수험표, 자기소개서는 [6. 다운로드] 이용
- 방문접수를 원칙으로 하며 대리접수 가능(우편접수 불가)





5. 제출서류





- 응시원서 및 수험표(우리 사 소정양식)
- 자기소개서(우리 사 소정양식)
- 성적증명서(단, 성적은 백분율로 환산하고, 석사학위 소지자는 대학성적 필히 첨부)
- 2004년 9월 이후 응시한 TOEIC, TEPS 성적표 중 사본 1부
- 각종 면허증 및 자격증 사본(해당자)
- 봉사활동 확인서(해당자)
- 우대자 증빙서류(해당자)


적십자사 직원은 공무원인가요?




적십자사 직원은 공무원이 아니며 준공무원 신분도 아닙니다. 다만, 정부 위탁사업 또는 공공사업을 수행하고 있어 국가공무원 규정 등을 준용하고 있을 뿐입니다.











보수




공무원 8급 또는 중견기업 수준
※ 학력 또는 사회경력(군경력 포함)에 따라 다소 차이가 있으며 상여금, 각종수당 등이 포함된 금액임











근무형태




주5일 근무(근무시간 09:00∼18:00)이며, 필요 시 휴일 근무











승진




승진은 6급에서 3년 이상 재직 자에 대하여 재직기간, 근무성적, 연수성적 등을 종합적으로 평가하여 각 기관의 승진심사위원회에서 결정합니다.













  근무지 배치 및 순환근무

  최종 합격자는 응시원서의 희망근무지역 및 희망직무분야 등을 참고하여 전국권으로 배치하게 되며,추후 인력운영상 필요한 경우 지역간 또는 지사, 혈액원, 병원 간에 전보가 이루지기도 합니다.








2007년 2월 졸업예정자도 지원이 가능한가요?




기졸업자에 한하여 지원이 가능하며 졸업예정자는 다음 기회를 이용하여 주시기 바랍니다.











어학성적이 반드시 있어야 하나요?




어학성적을 반드시 첨부하여야 지원이 가능합니다. 다만, 국외에서 취득한 TOEIC 성적은 접수하지 않습니다.











어학성적증명서




사본(A4용지)으로 제출합니다.











우대자 증빙서류는 어디서 받을 수 있나요?




취업보호대상자는 인근 국가보훈지청, 헌혈은 인근 혈액원 또 헌혈의 집, RCY활동은 지원자가 활동한 해당지사 RCY본부에서 발급 받을 수 있습니다.











우편으로 접수할 수 있나요?




우편으로는 접수하지 않습니다. 현 거주지와 응시기관과의 거리로 인하여 접수에 어려움이 있을 시 현 거주지에서 가장 가까운 곳에 위치한 접수기관을 방문하여 접수할 수 있습니다. 응시자의 지원자격 및 제출서류의 확인을 위하여 방문접수를 원칙으로 하고 있음을 양해하여 주시기 바랍니다.











직무적성검사란?




인성과 직무수행능력을 평가하는 검사로 서점의 수험서를 참고하십시오.







이전 1 ... 3 4 5 6 7 8 9다음
첨부 (0)
위로