J'ai un programme qui utilise à Wichí utiliser getOpenFileName comme:Comment utiliser QString et « »
QString fileName = QFileDialog::getOpenFileName(this,
tr("Select video"), "d:\\", tr("Video files (*.avi)"));
strcpy(thePath, fileName.toStdString().c_str()); // static char thePath[66];
scilab.setPathloc(thePath);
scilab
est un objet d'une classe qui envoient des tâches au travail SCILAB.it programme comme:
char std_dev[99];
char direc[60];
sprintf(direc,"direc=\'d:/BMDvideos/%s/%s/\'",getSessionName(),getVideoname());
sprintf(std_dev,"fn=\'d:/BMDvideos/%s/%s/%s.avi\'",
getSessionName(),getVideoname(),getVideoname());
SendScilabJob(direc);
SendScilabJob(std_dev);
//SendScilabJob("fn=\'d:/BMDvideos/Aufnahme0.avi\'");
SendScilabJob("exec('U:/scilab/done/std_dev.sce');");
bien ceci fonctionne très bien, mais quand je l'utilise comme QString
:
char text1 [70] ;
sprintf(text1,"disp(fn=\'%s\');",getPathloc());
SendScilabJob("exec('U:/scilab/done/std_dev.sce');");
rien ne fonctionne, je pense à cause du //
que je dois utiliser dans sprintf
. Une idée comment puis-je résoudre ceci?
Dans un littéral _string_, il n'est pas nécessaire d'échapper le caractère de guillemets simples '' '. –
Qu'advient-il de text1 dans le second exemple, et 70 caractères suffisent-ils? Pourquoi n'utilisez-vous pas un std :: string ou un vecteur au lieu d'un tableau char? Comment fonctionne SendScilabJob - est-ce votre propre code utilisant QProcess? –
Pete
@Pete Je veux déjà faire cela mais SCILAjobs ne prend que char [], oui mon code utilise QProcess mais pourquoi ça marche dans la première partie '?? – Engine