Haegar Geschrieben 6. März 2017 Melden Share Geschrieben 6. März 2017 Hallo *, ich möchte gerne eine externe Text-Datei von der Festplatte laden. Dazu verwende ich: void Start () { if (System.IO.File.Exists("Resources/Ausschluss.txt")) LoadTxtFromResource("Resources/Ausschluss.txt"); } static void LoadTxtFromResource (string fileName) { int i; string s; TextAsset sta; sta = Resources.Load(fileName) as TextAsset; Debug.Log(sta.text); string[] dataLines = sta.text.Split("\n"[0]); for (i = 0; i < dataLines.Length ; i++){ s = dataLines[i]; Debug.Log (s); } } Das TextAsset ist aber nach dem Laden leer; ich erhalte ständig eine NullReferenceException. Das File existiert. Wieso kann ich das nicht laden? Weiß jemand Rat? Danke, Ulrich Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Zer0Cool Geschrieben 6. März 2017 Melden Share Geschrieben 6. März 2017 Liegt das Textfile eventuell nicht in deinem Projektfolder, weil ich vermute Resources.Load() läd nur Assets und damit muss der Pfad auf ein Projektfolder + Asset in deinem Projekt zeigen. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Sascha Geschrieben 6. März 2017 Melden Share Geschrieben 6. März 2017 Du hast "Resources" mit im Pfad. Der ist aber implizit gegeben. Der Pfad, den du da stehen hast, entspricht also quasi "Resources/Resources/Ausschluss.txt" Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Zer0Cool Geschrieben 6. März 2017 Melden Share Geschrieben 6. März 2017 Sollte dein Textfile im Projektassetpfad liegen, probiere es mal mit diesem Pfad, oder siehe Sascha's Vorschlag, denke aber generell es ist ein Pfadproblem...: string texture = "Assets/Resources/Ausschluss.txt"; oder string texture = "Ausschluss.txt"; (siehe Sascha's Vorschlag) oder string texture = "Ausschluss"; Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Haegar Geschrieben 7. März 2017 Autor Melden Share Geschrieben 7. März 2017 Danke für die Vorschläge, aber es haut nix hin. Mich wundert halt, dass bei der Überprüfung, ob das File existiert, ein true zurückkommt, aber das File trotzdem nicht eingelesen werden kann... if (System.IO.File.Exists("Resources/Ausschluss.txt")) LoadTxtFromResource("Resources/Ausschluss.txt"); Mit Groß- & Kleinschreibung etc. hab ich auch schon experimentiert. Jetzt weiss ich auch nicht mehr weiter... Ulrich Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Sascha Geschrieben 7. März 2017 Melden Share Geschrieben 7. März 2017 Haegar, du hast meinen Post offenbar nicht gelesen. File.Exists schaut relativ zum Projekt (vermutlich), aber Resources.Load schaut relativ zu einem imaginären Ordner, der zum Inhalt die Inhalte aller Ordner mit Namen "Resources" im Projekt hat. Richtig also eher: if (System.IO.File.Exists("Resources/Ausschluss.txt")) LoadTxtFromResource("Ausschluss.txt"); Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Haegar Geschrieben 7. März 2017 Autor Melden Share Geschrieben 7. März 2017 Hi Sascha, ich hab das schon gelesen, aber es hat bisher nix zum Erfolg geführt. Mittlerweile habe ich zu Testzwecken in fast allen Ordnern ne Datei "Ausschluss.txt". Ich vermute fast, dass das Problem woanders liegt. Vielleicht ist die Datei zu groß (178 kb), vielleicht muss die Endung anders lautet (ne, bei Textdateien nicht) oder oder oder. Ich verstehe es nicht... ### Ich habs rausgekriegt... ### Die Endung ".txt" muss entfernt werden. Das ist alles... Also nur: if (System.IO.File.Exists("Resources/Ausschluss.txt")) LoadTxtFromResource("Ausschluss"); Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Zer0Cool Geschrieben 9. März 2017 Melden Share Geschrieben 9. März 2017 Hatte ich ja oben bereits geschrieben, aber gut zu wissen welche der 3 Varianten es war Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Haegar Geschrieben 9. März 2017 Autor Melden Share Geschrieben 9. März 2017 Hatte ich ja oben bereits geschrieben, aber gut zu wissen welche der 3 Varianten es war Richtig! Jetzt wo Du es sagst... Manchmal sollte man doch aufmerksamer lesen. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Recommended Posts
Archiviert
Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.