void execute(string m)
{

	      string line ; 
              ifstream check;ofstream add;ifstream add1;
         
             m_pInputFile.open("logfile.txt",std::ios_base::app | std::ios_base::out);
              remove_blank("logfile.txt");
              remove_blank("update.txt");
            
              
                 if (is_empty("logfile.txt")==1)
                      m_pInputFile<<m;
                else
                  m_pInputFile<<endl<<m;

	
    
		m_pInputFile.close();
		m_pInputFile.clear();
             
              
		add.open("update.txt", std::ios_base::app );
           
                if (is_empty("update.txt")==1)
                      m_pInputFile<<"Food added";
                else
                  m_pInputFile<<endl<<"Food added";
		   add.close();
                 


	}
	void undo()
	{     string line;
		string line_2;
		ofstream out;
		out.open("logfile.txt", std::ios_base::app | std::ios_base::out );
		m_pInputFile.open("update.txt" );
             /*     remove_blank("logfile.txt");
                       remove_blank("update.txt");*/

		while(!  m_pInputFile.eof())
		{
			getline(m_pInputFile,line);
                       //  cout <<line <<"line"<<endl;
		}
		 
	
		m_pInputFile.close();
		if (line=="log edited")
 
		{  
                         remove_blank("logfile.txt");
                       remove_blank("update.txt");
                       remove_blank("editedlogs.txt");
                    //    removelastline("logfile.txt");
			ifstream editlogs;
			editlogs.open("editedlogs.txt");
			while(!  editlogs.eof())
			{
				getline(editlogs, line_2);
                               
			}
                            
                      string firstCharacter;
		//	line_s=line;
                        stringstream ssin(line_2);
			ssin >>firstCharacter;
                              cout <<firstCharacter;
                          deletelog(firstCharacter);
                        	  cout<<line_2;
			
			out<<endl<<line_2;
                         out.close();
                          removelastline("update.txt");
                        removelastline("deletedlogs.txt");
                         system("sort -n -k 1 logfile.txt > sorted-out.txt");
                        remove("logfile.txt");
                        rename("sorted-out.txt" , "logfile.txt");
			removelastline("update.txt");
			removelastline("editedlogs.txt");
			editlogs.close();}
示例#3
0
Data* data_json_create(json_object* jso) {
	char name[64] = {0, };
	uint64_t size = 10;

	//TODO add new value
	json_object_object_foreach(jso, key, child_object) { 
		if(!strcmp(key, "name")) {
			strcpy(name, json_object_to_json_string(child_object));
			remove_blank(name);
		} else if(!strcmp(key, "size")) {
			size = json_object_get_int64(child_object);
		}
	}

	return data_create(name, size);
}
示例#4
0
int main(int argc, char *argv[])
{
    if(argc != 2)  		/*  检测参数 */
    {
        ferr("缺少源文件!\n");
        exit(1);
    }

    filename = argv[1];		/* 获取源文件名 */

    if( !file_exist(filename) )   /* 判断文件是否存在 */
    {
        ferr("文件不存在!\n");
        exit(1);
    }

    remove_blank(filename);	/* 除去多余空格 、TAB、空行*/
    exit(0);
}
示例#5
0
bool mqtt_process(MQTT* mqtt) {
	if(mqtt->length < sizeof(MQTT_VHeader)) {
		return false;
	}

	MQTT_VHeader* vheader= (MQTT_VHeader*)mqtt->body;
	ssize_t len = mqtt->length - (sizeof(MQTT_VHeader) + vheader->topic_length);
	char buf[256] = {0,};
	if(len < 0 || len > sizeof(buf)) {
		return false;
	}
	memcpy(buf, (char*)vheader->topic + vheader->topic_length, len);
	json_object* jso = json_tokener_parse(buf);

	if(jso) {
		Sensor* sensor = NULL;
		char name[64] = {0, };
		json_object_object_foreach(jso, key, child_object) {
			if(!strcmp(key, "name_of_sensor")) {
				strcpy(name, json_object_to_json_string(child_object));
				printf("name %s\n", name);
				remove_blank(name);
				sensor = sensor_database_get(name);
			}
#ifdef TIMER_LOG
			if(!strcmp(key, "id_of_sensor")) {
				char id[64] = {0, };
				strcpy(id, json_object_to_json_string(child_object));
				remove_blank(id);
				extern void timer_check(char* id);
				timer_check(id);
			}
#endif
		}

		if(sensor) {
			json_object_object_foreach(jso, key1, child_object1) {
				char name[64] = {0, };

				strcpy(name, key1);
				remove_blank(name);

				Data* data = sensor_get_data(sensor, name);
				if(data) {
					char value[64] = {0, };
					strcpy(value, json_object_to_json_string(child_object1));
					remove_blank(value);
					char* ptr;
					int64_t val = strtol(value, &ptr, 10);
#ifdef DEBUG_MSG
					printf("\t%s: %ld\n", name, val);
#endif
					data_push_value(data, val);
				}
			}
		}
#ifdef DEBUG_MSG
		printf("\n");
#endif
		json_object_put(jso); //free
	}