포럼 회원으로 등록하신분만 다운로드가 가능합니다. 최대 업로드 가능한 용량은 20MB 입니다.

출처: http://kldp.org/node/64566
==============

limxml2 라이브러리를 이용해서 어트리뷰트 값을 가져오는 방법이 무엇인가요?

아래와 같은 xml 문서가 있습니다. 이 문서에서 node 의 type 인 1을 가져오고 싶습니다.

<message>
<node type="1">
 <to> home </to>
 <from> house </from>
</node>
</message>

위 문서를 아래 소스를 응용해서 어트리뷰터 값을 가져 올 수 있을까요?

static void
print_element_names(xmlNode * a_node)
{
    xmlNode *cur_node = NULL;

    for (cur_node = a_node; cur_node; cur_node = cur_node->next) {
        if (cur_node->type == XML_ELEMENT_NODE) {
            printf("node type: Element, name: %sn", cur_node->name);
        }

        print_element_names(cur_node->children);
    }
}

int
main(int argc, char **argv)
{
    xmlDoc *doc = NULL;
    xmlNode *root_element = NULL;

    if (argc != 2)
        return(1);

    doc = xmlReadFile(argv[1], NULL, 0);

    if (doc == NULL) {
        printf("error: could not parse file %sn", argv[1]);
    }

    root_element = xmlDocGetRootElement(doc);

    print_element_names(root_element);

    xmlFreeDoc(doc);

    xmlCleanupParser();

    return 0;
}

답변 좀 꼭 부탁드립니다.

xmlGetProp()함수가 있었네요. 이거 사용하면 되네요 *^^*

List of Articles
번호 제목 글쓴이 날짜 조회 수sort

펌웨어 프로그래밍 팁 - gotoxy()

dos2unix source & site file

grep을 이용한 검색 script ==> gref

framebuffer capture하기 [1]

Linux 101 Hacks file [1]

wxWidget mysql direct access file

The GNU Binary Utilities - How to Using binutils file

micro second to jiffies 변환

C Library ABI for the ARM®Architecture file

POSIX Serial Programming Guide file

CVS 디렉터리 날리는 방법

The GNU Make - How to Using Make file

간단한 리눅스 firewall script

한글 mount/samba option

유용한 ARM 어셈블리 매크로

SDL에서 touchscreen enable 시키는 방법

일본어 mount option

The GNU Linker - How to Using ld file

ARM ADS Errors and Warning 코드 설명 file

펌웨어 프로그래밍 팁 - 2진수 처리기

사용자 로그인