if 1 // save language set. static int get_file_line(char *pInputName, char *pOutputBuf, int line_idx) { FILE * fp; int i=0; char * line = NULL; size_t len = 0; ssize_t read; if((i = access (pInputName,F_OK)) == 0) { //printf("[access] file exist!/n"); fp = fopen(pInputName, "r"); } else { //printf("[access] file not exist!!/n"); fp = fopen(pInputName, "w+"); } if (fp == NULL) return -1; if(pOutputBuf && (line_idx<=0)) { fclose(fp); return -2; } char *p; while ((read = getline(&line, &len, fp)) != -1) { //printf("line ==== %s \n",line); p=line; if(line[0]=='#') continue; ++i; // JPRINTF(("line [%d] === [%x] [%x] == [%x] \n",i,line[0],line[1],line[2],strlen(line))); if(pOutputBuf && (i>=line_idx)) break; } if(pOutputBuf && (i!=line_idx)) { //printf("pOutputBuf,i,line_idx === [%d, %d, %d] \n",pOutputBuf,i,line_idx); free(line); fclose(fp); return -3; } if (pOutputBuf && line) { int length=strlen(line)>200?200:strlen(line); memcpy(pOutputBuf,line,length); free(line); fclose(fp); return 0; } fclose(fp); return i; } #define LANG_CONFIG_NAME "/root/langconfig.txt" static void TestGetLanguageConfig() { int ret; char pTempString[40]={0}; ret=get_file_line(LANG_CONFIG_NAME,pTempString,1); if(0!=ret) // Get line Failed. { tSetupLangSelect=0; }else tSetupLangSelect=atoi(pTempString); // printf("tSetupLangSelect ======= [%d] [%d] [%s]\n",tSetupLangSelect,atoi(pTempString),pTempString); } static void TestSetLanguageConfig() { int fd; char pTempParam[4]={0}; sprintf(pTempParam,"%d",tSetupLangSelect); fd = open( LANG_CONFIG_NAME,O_WRONLY | O_CREAT | O_TRUNC, S_IRWXU ); write(fd, pTempParam, strlen(pTempParam)); fsync(fd); close(fd); }