Qtにおける経路問題の一般的な解決方法
807 ワード
Qtにおける経路問題の発生は一般的にプラットフォーム間でコンパイルされる際に発生し,異なるシステムの経路に対する表現が異なるため,あるシステム上で順調に実行されるコードが別のシステム上で実行できず,エラーさえ発生する現象をもたらした.
私が直面した問題はlinux上で良いコードを実行して、windowsの下に移植する時、エラーです.
ここでは主にスラッシュと反スラッシュ,異なるシステムによる経路の解析の違いによるものである.
1、スラッシュと反スラッシュ:
ネット上の解決方法:
2.一般的な方法.(強くお勧め!)
私が直面した問題はlinux上で良いコードを実行して、windowsの下に移植する時、エラーです.
ここでは主にスラッシュと反スラッシュ,異なるシステムによる経路の解析の違いによるものである.
1、スラッシュと反スラッシュ:
ネット上の解決方法:
QString path = "C:/testA\\testB\testC.txt";
QString tmpPath;
if(path.contains("\\"))
{
tmpPath = path.replace("\\","/",Qt::CaseInsensitive);
}
if(tmpPath .contains("\\"))
{
tmpPath = tmpPath .replace("\\","/",Qt::CaseInsensitive);
}
2.一般的な方法.(強くお勧め!)
QString path ;
path = "E:/file1/file2/file3.txt";
path = QDir::toNativeSeparators(path);
// 。 。