2012-09-18 16 views
23

Chỉ cần bắt đầu trong lớp XML của tôi và gặp một chút rắc rối khi tìm ra giải pháp cho lỗi của tôi. Tôi nhận được lỗi này: "Đánh dấu trong tài liệu theo phần tử gốc phải được tạo đúng. Vị trí bắt đầu: 6: 2".(XML) Đánh dấu trong tài liệu theo phần tử gốc phải được định dạng tốt. Vị trí bắt đầu: 6: 2

Bất kỳ loại gợi ý hoặc trợ giúp nào đều tuyệt vời.

<?xml version="1.0" encoding="UTF-8"?> 
<heading> 
The Twelve Days of Christmas 
</heading> 

<song> //OxyGen highlights "<song>" as the error, but i'm not sure I understand. 
    <Day ="One"> 
     <verse> 
    On the first day of Christmas, my true love sent to me, a partridge in a pear tree. 
     </verse> 
    </Day> 

    <Day="Two"> 
     <verse> 
    On the second day of Christmas, my true love sent to me 
    Two turtle doves 
    and a partridge in a pear tree. 
     </verse> 
    </Day> 

    <Day="Three"> 
     <verse> 
    On the third day of Christmas, my true love sent to me 
    Three French hens, 
    two turtle doves 
    And a partridge in a pear tree. 
     </verse> 
    </Day> 

    <Day="Four"> 
     <verse> 
    On the fourth day of Christmas, my true love sent to me 
    Four calling birds, 
    three French hens, 
    two turtle doves 
    And a partridge in a pear tree. 
     </verse> 
    </Day> 

    <Day="Fifth"> 
     <verse> 
    On the fifth day of Christmas, my true love sent to me 
    Five golden rings. 
    Four calling birds, 
    three French hens, 
    two turtle doves 
    And a partridge in a pear tree. 
     </verse> 
    </Day> 

    <Day="Sixth"> 
     <verse> 
    On the sixth day of Christmas, my true love gave to me 
    Six geese a-laying, 
    Five golden rings. 
    Four calling birds, 
    three French hens, 
    two turtle doves 
    And a partridge in a pear tree. 
     </verse> 
    </Day> 

    <Day="Seventh"> 
     <verse> 
    On the seventh day of Christmas, my true love gave to me 
    Seven swans a-swimming, 
    six geese a-laying, 
    Five golden rings. 
    Four calling birds, 
    three French hens, 
    two turtle doves 
    And a partridge in a pear tree. 
     </verse> 
    </Day> 

    <Day="Eighth"> 
     <verse> 
    On the eighth day of Christmas, my true love gave to me 
    Eight maids a-milking, 
    seven swans a-swimming, 
    six geese a-laying, 
    Five golden rings. 
    Four calling birds, 
    three French hens, 
    two turtle doves 
    And a partridge in a pear tree. 
     </verse> 
    </Day> 

    <Day="Ninth"> 
     <verse> 
    On the ninth day of Christmas, my true love gave to me 
    Nine ladies dancing, 
    eight maids a-milking, 
    seven swans a-swimming, 
    six geese a-laying, 
    Five golden rings. 
    Four calling birds, 
    three French hens, 
    two turtle doves 
    And a partridge in a pear tree. 
     </verse> 
    </Day> 

    <Day="Tenth"> 
     <verse> 
    On the tenth day of Christmas, my true love gave to me 
    Ten lords a-leaping, 
    nine ladies dancing, 
    eight maids a-milking, 
    seven swans a-swimming, 
    six geese a-laying, 
    Five golden rings. 
    Four calling birds, 
    three French hens, 
    two turtle doves 
    And a partridge in a pear tree. 
     </verse> 
    </Day> 

    <Day="Eleventh"> 
     <verse> 
    On the eleventh day of Christmas, my true love gave to me 
    Eleven pipers piping, 
    ten lords a-leaping, 
    nine ladies dancing, 
    eight maids a-milking, 
    seven swans a-swimming, 
    six geese a-laying, 
    Five golden rings. 
    Four calling birds, 
    three French hens, 
    two turtle doves 
    And a partridge in a pear tree. 
     </verse> 
    </Day> 

    <Day="Twelfth"> 
     <verse> 
    On the twelfth day of Christmas, my true love gave to me 
    Twelve drummers drumming, 
    eleven pipers piping, 
    ten lords a-leaping, 
    nine ladies dancing, 
    eight maids a-milking, 
    seven swans a-swimming, 
    six geese a-laying, 
    Five golden rings. 
    Four calling birds, 
    three French hens, 
    two turtle doves 
    And a partridge in a pear tree. 
     </verse> 
    </Day> 

</song> 

Trả lời

56

Trong XML có thể chỉ có một tử gốc - bạn có hai - headingsong.

Nếu bạn cơ cấu lại một cái gì đó như:

<?xml version="1.0" encoding="UTF-8"?> 
<song> 
<heading> 
The Twelve Days of Christmas 
</heading> 
.... 
</song> 

Các lỗi về tốt được hình thành XML trên cấp độ gốc sẽ biến mất (mặc dù có thể có những vấn đề khác).

+0

wow, * facepalm * là điều duy nhất tôi có thể nghĩ đến, cảm ơn bạn rất nhiều. – trtmerlin

+0

Tiết kiệm rất nhiều thời gian. Cảm ơn nhiều – bisw

-4

Sau khi bảo hiểm rằng chuỗi "strOutput" có cấu trúc XML đúng, bạn có thể làm điều này:

Matcher junkMatcher = (Pattern.compile("^([\\W]+)<")).matcher(strOutput); 
strOutput = junkMatcher.replaceFirst("<"); 
Các vấn đề liên quan