Esri/file-geodatabase-api

Feature Class Could Not Be found Due to Non-ASCII Character In Name

clui-safe opened this issue · 0 comments

When trying to open a feature class that contains Ä in the name, the API is unable to find the table (error value -2147220655). I have attached a .gdb file that contains a feature class name containing the faulting character. When the character is removed from the name it is able to be opened. The feature class can be opened and displayed properly in ArcGIS Pro and ArcMap. I have also confirmed that the characters are stored as a wstring as UTF-16 bytes.

Code snippet:

std::vector<std::wstring> datasetVector;
fgdbError result = geodb.GetChildDatasets(L"\\", L"Feature Class", datasetVector); 
const std::wstring tableName = datasetVector[0];
const fgdbError result = geodb.OpenTable(tableName, currTable_);  // returns error value, could not find table

Edit: I have done all of the above on Windows 10 Version 10.0.19042 Build 19042 x64
Edit 2: After some more debugging, I have found that this issue only happens when beta UTF8 encoding is turned on.

repro.gdb.zip