2015-04-15 47 views
0

我想要使用Xamarin.Forms的Tess-Two(Tesseract OCR fork for Android)工作,但對於我的OCREngine進行初始化,我需要包含語言數據的文件夾的路徑。我已將這些數據放入一個文件夾中,並使用「始終複製」選項將其標記爲「內容」。Xamarin.Forms Android內容文件

出於某種原因,我似乎無法引用(甚至找不到)標記爲內容的文件。

簡而言之:我需要一個包含一些需要複製到設備上的文件的文件夾,並且我需要能夠獲取到它們的路徑。

回答

1

對於Android,您希望將文件包含爲Assets

Android提供了一個AssetManager類,允許你打開和閱讀資產

string content; 
using (StreamReader sr = new StreamReader (Assets.Open ("read_asset.txt"))) 
{ 
    content = sr.ReadToEnd(); 
} 
+0

謝謝你的評論。我將如何去使用此路徑獲取文件夾的路徑? OCREngine需要的是一個字符串路徑,然後它檢查您提供的目錄以查看它是否包含「tessdata」目錄,並且該文件夾包含正確的文件。你明白這個問題嗎? – syntax1993

+1

資產文件嵌入您的應用程序包 - 我不認爲您可以直接引用其路徑。如果你的lib只能使用文件路徑,你可以打開它們作爲流,然後將它們寫入SpecialFolders.Personal,然後將該路徑傳遞給你的lib。 – Jason

+0

謝謝,我認爲有辦法做到這一點,而不必將它們寫入內部存儲器。再次感謝。 – syntax1993