但是,如果是相对路径时,怎么样把它转换为绝对路径就不知道了,我一开始是自己写算法,判断字符串中的../ ./,就是判断相对当前文件有几层,不过感觉不好,而且可能还有缺陷,API或者别的函数有没有方便一点的方法!!!
PS:小菜是刚转C++,所以还请各位大虾能贴出代码参考参考,谢谢鸟!!!
对åï¼è¿ä¸ªæ¯æä¹è½¬æ¢æç»å¯¹è·¯å¾ï¼è¦æ¯æ²¡æ../è¿ä¸ªï¼æåæ¯ä¼ï¼ç´æ¥å¨åé¢æ¼æ¥å°±è¡äºï¼å¯æ¯æäºè¿ä¸ªä¸è¥¿ï¼å°±ä¸å¥½åäºï¼æ没æä»ä¹ç°æçå½æ°å¯ä»¥å¤æ转æ¢ç
假如说我的当前程序路径是E:\aa\bb\cc\123.exe,我传入一个参数是../test.txt或者../../../test.txt。我知道可以通过对../的判断而偏移位置,可是我总是感觉这样做有什么缺陷,毕竟参数是由用户输入的,他也不一定就输../../这种,所以希望用哪个函数方法啥的来做,有么??
追答你可以使用 _splitpath 来拆分路径 然后根据自己的绝对路径组合
里面有5个参数 1是当前要拆分的路径,2是被拆分出的设备如"e:",3是路径(不包括2),4是文件名,5文件后缀。去MSDN上查下~这个还需要个头~里面有写~