struct charRecognition *charRecognition_learnWeights(char *pathIn, char *pathOut, char chars[], size_t size) { struct charRecognition *charReg = malloc(sizeof(struct charRecognition)); struct NeuralNetwork *myNeuralNetwork = neuralNetwork_main(256, HIDDEN_LAYER_COUNT, size); NeuralNetwork_loadWeightInput(myNeuralNetwork, file_get_content(pathIn)); NeuralNetwork_loadWeightOutput(myNeuralNetwork, file_get_content(pathOut)); charReg->letters = chars; charReg->size = size; charReg->network = myNeuralNetwork; return charReg; }
int main(int argc,char *argv[]) { char filename[256]; char buff[16 * 1024]; char *content; int64_t file_size; strcpy(filename, "/tmp/.filefunc.test"); if (file_exist(filename)) { if (unlink(filename) != 0) { fprintf(stderr, "file: "__FILE__", line: %d, " \ "unlinke file: %s fail, " \ "errno: %d, error info: %s\n", __LINE__, \ filename, errno, strerror(errno)); return errno; } } assert(!file_exist(filename)); memset(buff, 'a', sizeof(buff)); assert(file_write_buffer(filename, buff, sizeof(buff)) == 0); assert(file_exist(filename)); assert(file_get_content(filename, &content, &file_size) == 0); assert(file_size == sizeof(buff)); assert(memcmp(buff, content, file_size) == 0); free(content); assert(unlink(filename) == 0); assert(!file_exist(filename)); assert(file_get_content(filename, &content, &file_size) == ENOENT); printf("test OK\n"); return 0; }
static int ini_do_load_from_file(const char *filename, ini_context_t *context) { int64_t file_size; char *content; int result; /* * TODO: support URL like http://xxx */ /* int http_status; int content_len; char error_info[512]; if (strncasecmp(filename, "http://", 7) == 0) { if ((result=get_url_content(filename, 10, 60, &http_status, &content, &content_len, error_info)) != 0) { fprintf(stderr, "file: "__FILE__", line: %d, " "get_url_content fail, " "url: %s, error info: %s", __LINE__, filename, error_info); return result; } if (http_status != 200) { free(content); fprintf(stderr, "file: "__FILE__", line: %d, " "HTTP status code: %d != 200, url: %s", __LINE__, http_status, filename); return EINVAL; } } else */ { if ((result=file_get_content(filename, &content, &file_size)) != 0) { return result; } } result = ini_do_load_from_buffer(content, context); free(content); return result; }
int gretl_recode_file (const char *path1, const char *path2, const char *from_set, const char *to_set, PRN *prn) { gchar *buf = NULL; gsize bytes = 0; int err = 0; /* get entire content of original file */ buf = file_get_content(path1, &bytes, prn, &err); if (!err) { GError *gerr = NULL; gchar *trbuf = NULL; gsize written = 0; /* recode the buffer */ trbuf = g_convert(buf, bytes, to_set, from_set, NULL, &written, &gerr); if (gerr != NULL) { err = E_DATA; gretl_errmsg_set(gerr->message); g_error_free(gerr); } else { /* write recoded text to file */ pprintf(prn, "recoded: %" G_GSIZE_FORMAT " bytes\n", written); err = file_set_content(path2, trbuf, written); } g_free(trbuf); } g_free(buf); return err; }