c语言获取当前项目路径的文件

c语言获取当前项目路径的文件,第1张

/从字符串的左边截取n个字符/

char left(char dst,char src, long n)

{

    char p = src;

    char q = dst;

    int len = strlen(src);

    if(n>len) n = len;

    /p += (len-n);/  /从右边第n个字符开始/

    while(n--) (q++) = (p++);

    (q++)='\0'; /有必要吗?很有必要/

    return dst;

}

int substr(char s1, char s2)

{

    char s3 = strstr(s1,s2);

    if(s3 == NULL)

          return -1;

    return strlen(s1)-strlen(s3);

}

char mysubstr(char srcstr, int offset, int length) {

    int total_length = strlen(srcstr);

    int real_length = ((total_length - offset) >= length length : (total_length - offset)) + 1;

    char tmp;

    if (NULL == (tmp=(char) malloc(real_length sizeof(char)))) {

        printf("Memory overflow \n");

        exit(0);

    }

    strncpy(tmp, srcstr+offset, real_length - 1);

    tmp[real_length - 1] = '\0';

    return tmp;

}

#define ENCODE 1

#define IN_PCM(a) strcat(a,"/file/inputpcm")

#define OUT_SPX(a) strcat(a,"/file/outspx")

#define OUT_PCM(a) strcat(a,"/file/outpcm")

int main(int argc, char argv){

    char path;

    char dist;

    path = argv[0];

    char index =  strstr(path,PROJECT_PATH);

    long diff = index-path;

    char pathDir = mysubstr(path,0,substr(path,PROJECT_PATH)+9);

    // 创建一个字符串数组

    char arr1[64] = {0};

    strcpy(arr1, pathDir);

    char arr2[64] = {0};

    strcpy(arr2, pathDir);

    char temp0=IN_PCM(pathDir);

    char temp=OUT_SPX(arr1);

    char tempOut=OUT_PCM(arr2);

    // 创建一个字符串数组

    char arr0[64] = {0};

    strcpy(arr0, temp0);

    printf("after arr0=%s\n,arr1=%s\n,arr2=%s\n",arr0,arr1,arr2);

    return 0;

}

File path =null;

      try {

path =new File(ResourceUtilsgetURL("classpath:")getPath());

      }catch (FileNotFoundException e) {

// nothing to do

      }

if (path ==null || !pathexists()) {

path =new File("");

      }

String pathStr = pathgetAbsolutePath();

// 如果是在eclipse中运行,则和target同级目录,如果是jar部署到服务器,则默认和jar包同级

      pathStr = pathStrreplace("\\target\\classes", "");

      //Systemoutprintln(pathStr+"\\upload");

      return pathStr+"\\upload\\";

在servlet中,可以通过以下方法获取项目的绝对路径

使用ServletContext对象的getRealPath()方法:

String path = getServletContext()getRealPath("/");

使用类加载器的getResource()方法:

String path = getClass()getClassLoader()getResource("")getPath();

以上两种方法都可以获取到项目的绝对路径,但是第一种方法需要传入相对路径作为参数,而第二种方法则不需要。

没错,这是创建的临时文件,不需在意,你upload上传的文件时就是从这个临时文件里读的数据,再写到你保存文件的路径

Windows 系统C盘当前用户目录下Local/temp,是所有生成的临时文件存放的目录

requestgetScheme()得到协议如:>

public class $ {

    public static void main(String[] args) {

        String path = SystemgetProperty("userdir") + "/src/html/emailhtml";

        Systemoutprintln(path);

    }

}

动态获取路径

以上就是关于c语言获取当前项目路径的文件全部的内容,包括:c语言获取当前项目路径的文件、springboot获取项目路径、servlet中如何得到项目的绝对路径等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9327694.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存