
	                	                 
DOMCharacterData::deleteData 메서드는 특정 범위의 문자열 데이터를 삭제하는 메서드입니다. 
deleteData 메서드의 인자로 전달하는 offset은 삭제할 문자열의 시작 인덱스를 의미하고, count는 삭제할 문자열의 길이를 의미합니다. 
만약 offset이 문자열의 끝 인덱스보다 큰 경우, 메서드는 문자열의 끝까지 데이터를 삭제합니다. 
예를 들어, 문자열 "Hello World"가 있을 때, offset이 6이고 count가 5인 경우, "World"만 삭제되고 "Hello"는 남아있게 됩니다. 
예시 코드는 다음과 같습니다.
#hostingforum.kr
java
import org.w3c.dom.CharacterData;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import java.io.IOException;
import java.io.StringReader;
public class Main {
    public static void main(String[] args) throws ParserConfigurationException, IOException, SAXException {
        // XML 문서를 파싱하여 Document 객체를 생성합니다.
        DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
        DocumentBuilder builder = factory.newDocumentBuilder();
        InputSource is = new InputSource(new StringReader("Hello World"));
        Document document = builder.parse(is);
        // 문자열 "World"를 삭제합니다.
        Node node = document.getDocumentElement().getFirstChild();
        while (node != null) {
            if (node instanceof CharacterData) {
                CharacterData characterData = (CharacterData) node;
                characterData.deleteData(6, 5);
                break;
            }
            node = node.getNextSibling();
        }
        // 삭제된 문자열을 출력합니다.
        System.out.println(document.getDocumentElement().getTextContent());
    }
}
이 예시 코드에서는 XML 문서를 파싱하여 Document 객체를 생성하고, 문자열 "World"를 삭제합니다. 삭제된 문자열을 출력하여 결과를 확인할 수 있습니다.
2025-04-30 23:38