Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

WINDOWS PHONE 8.1 DEVELOPMENT Open File failure

Posted on 2014-10-20
6
Medium Priority
?
558 Views
Last Modified: 2014-12-07
Hi all,
I'm trying t open an XML file in WP8.1 dev environment (VS2013).
I can open an xml file that has been added to my project.  great for testing....
I am creating a simple xml, hard coding the file, first on the phone than trying to open it.  I keep getting errors that it can't open the file.  Don't know what i'm missing here.

An exception of type 'System.Xml.XmlException' occurred in SYSTEM.XML.NI.DLL but was not handled in user code

Additional information: Cannot open 'file:///C:/Data/SharedData/PhoneTools/AppxLayouts/9366RuSoftInformationTech.RuSafeVS.Debug_AnyCPU.John/RuSafe/RuSafe 102.xml'. The Uri parameter must be a file system relative path.

Open in new window

0
Comment
Question by:Thunder724
  • 3
  • 2
6 Comments
 
LVL 16

Expert Comment

by:Kamal Khaleefa
ID: 40394167
MAKE SURE THE PATH IS CORRECT
0
 
LVL 96

Expert Comment

by:Bob Learned
ID: 40394600
I believe that the key is in this statement, "The Uri parameter must be a file system relative path.", since you have a full path.

How are you reading the file?
0
 
LVL 4

Author Comment

by:Thunder724
ID: 40394771
This is just odd...
What I'm doing is creating an XML File under a subdirectory, such as \sub.
The file(s) are created just fine and they are presented on my phone screen so that I can select them.

The path is the same location as the files.
Not the RSCatalog_Active$ variable is the actual file name.

Dim local As StorageFolder = PARENT_PATH
        Dim dataFolder = Await local.GetFolderAsync("Sub")
        'Dim RC_Catalog As StorageFile = dataFolder.GetFileAsync(RSCatalog_Active$)
        FullFilePath$ = dataFolder.Path & "\" & RSCatalog_Active$ 'RC_Catalog.Path
       
        ReadXMLData_MAIN(FullFilePath$)

Open in new window


the function to read in the XML is below.  If I have an xml file hard coded, within my project, which I've used for testing it works.

Friend Sub ReadXMLData_MAIN(ByVal XMLFileName$)
        Dim xmlData As XDocument = XDocument.Load(XMLFileName$)
        Table_Main = From query In xmlData.Descendants("MAINTBL") Select New DATA_MAIN() With _
        { _
            .sITEM_NAME = DirectCast(query.Element("sITEM_NAME").Value, String), _
            .SID = DirectCast(query.Element("SID").Value, String) _
        }

    End Sub

Open in new window


the error occurs at the point in the function....
 Dim xmlData As XDocument = XDocument.Load(XMLFileName$)

But again I know the function is ok because it can read the xml file within my project.
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
LVL 96

Expert Comment

by:Bob Learned
ID: 40397242
I would think that files within your project would have the correct relative path name.  Files outside would need a different approach.

Example #1:

Full path = C:\folder1\folder1.1\folder1.1.1\log.txt
Root = C:\folder1\folder1.1
Relative = folder1.1.1\log.txt

Example #2

Files:
C:\folder1\folder1.1\folder1.1.1\log.txt
C:\folder2\folder2.1\folder2.1.1\log.txt
C:\folder3\folder3.1\folder3.1.1\log.txt

Full path = C:\folder3\folder3.1\folder3.1.1\log.txt
Root = C:\folder1\folder1.1
Relative = ..\..\folder3.1\folder3.1.1\log.txt
0
 
LVL 4

Accepted Solution

by:
Thunder724 earned 0 total points
ID: 40476876
Sorry for the delay; I thought I had already commented on this but guess i missed this one.
I figured out the problem and it had to do witht he "\" in the path needed to be "/" the opposite direction.
0
 
LVL 4

Author Closing Comment

by:Thunder724
ID: 40485300
I figured this out on my own.
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Entity Framework is a powerful tool to help you interact with the DataBase but still doesn't help much when we have a Stored Procedure that returns more than one resultset. The solution takes some of out-of-the-box thinking; read on!
Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
Exchange organizations may use the Journaling Agent of the Transport Service to archive messages going through Exchange. However, if the Transport Service is integrated with some email content management application (such as an anti-spam), the admin…
Please read the paragraph below before following the instructions in the video — there are important caveats in the paragraph that I did not mention in the video. If your PaperPort 12 or PaperPort 14 is failing to start, or crashing, or hanging, …
Suggested Courses

783 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question