Java OpenCV cvWriteString不适用于参数 for(i=0;i

Java OpenCV cvWriteString不适用于参数 for(i=0;i,java,opencv,Java,Opencv,我正在尝试使用openCV进行面部识别。这是我从javaCV示例中找到的代码的一部分。 编译器总是抱怨: opencv_core类型中的方法cvWriteString(opencv_core.CvFileStorage,String,String,int)不适用于参数(opencv_core.CvFileStorage,String,Object,int) 有人能帮我吗?谢谢personNames.get(i)返回一个对象,而不是字符串。您必须强制转换它,让编译器知道您将传入一个字符串 试试这个

我正在尝试使用openCV进行面部识别。这是我从javaCV示例中找到的代码的一部分。 编译器总是抱怨:

opencv_core类型中的方法cvWriteString(opencv_core.CvFileStorage,String,String,int)不适用于参数(opencv_core.CvFileStorage,String,Object,int)

有人能帮我吗?谢谢

personNames.get(i)返回一个对象,而不是字符串。您必须强制转换它,让编译器知道您将传入一个字符串

试试这个:

for (i = 0; i < nPersons; i++) {
    String varname = "personName_" + (i + 1);
    cvWriteString(
              fileStorage, // fs
          varname, // name
              personNames.get(i), // string
              0); // quote
}
for(i=0;i
for (i = 0; i < nPersons; i++) {
    String varname = "personName_" + (i + 1);
    cvWriteString(fileStorage, // fs
                  varname, // name
                  (String) personNames.get(i), // string
                  0); // quote
}