2016-11-17 4 views

답변

0

나는 보통이

Dim fsXML As New FileStream("countyByRegion.xml", FileMode.Open, FileAccess.Read) 

을 그리고 xmldoc.Load(fsXML)

+0

xml 파일이 포함 된 리소스에 있습니다. 내가 작업하고있는 응용 프로그램은 확장이며 정확한 파일 경로가 없기 때문에 위 코드를 시도해 보았습니다. "mscorlib.dll에서 'System.IO.FileNotFoundException'유형의 예외가 발생했지만 처리되지 않았습니다. 사용자 코드 추가 정보 : 'C : \ Program Files (x86) \ TriZetto \ Facets \ System \ Config \ countyByRegion.xml'파일을 찾을 수 없습니다. " – Gautam

+0

임베디드 리소스라면 어쨌든 전체 경로가 필요하지 않습니다. (여기에 간단한 내용이 누락 되었습니까?) – Leprechaun

+0

정말 미안 해요. VB에서 새롭고 제안 된 것과 동일한 코드를 사용하고 있으며 임베디드 리소스 그것은 다른 위치에있는 파일을 찾지 않아야합니다. 지금까지는 임베디드 리소스에서 파일을 읽는 방법에 대한 연구를하고 있지만, 운이 거의 없습니다. – Gautam

1

LoadXml가 로딩 파일을 사용하지 사용할 것, 그것은 문자열로 로딩 XML을위한 것입니다. 따라서 LoadXml("<root><bar>hi</bar></root>");과 같은 작업을 수행 할 것으로 예상됩니다. 분명히 파일 이름이 유효한 XML이 아닙니다.

Load을 사용하여 파일을로드 할 수 있습니다. 지금 LoadXml을 사용하는 것처럼이 파일을 사용하면 파일 경로를 지정하기 만하면됩니다.

+0

감사합니다, 당신의 요점을 얻었다. – Gautam

0
Dim fileText As String 
    Dim a As Assembly = GetType(ZP957_Form).Assembly 
    Using reader As New StreamReader(a.GetManifestResourceStream("ZP957.countyByRegion.xml")) 
     fileText = reader.ReadToEnd() 
    End Using 

    xmldoc.LoadXml(fileText) 

은 XML이 포함 된 이후, 나는 GetManifestResourceStream을 사용했다 그것을위한 어셈블리에서 읽어했고, 지금 우리가 XML에서 파일 스트림을 가지고 있기 때문에 우리는 LoadXml을 할 수 있습니다. 이것은 나를 위해 일했다.

관련 문제