Пытаюсь распарсить multipart/form-data. Считываю построчно. Заголовки отделены от файла пустой строкой. Пытаюсь ее определить так
if (buf == '\n')
Это не работает из-за того что вместо переноса строки есть еще какой-то символ, но в консоли он не отображается. Есть способ вывести в консоль содержание переменной без преобразования, чтобы можно было увидеть что там за символы?
char *delimStr = FCGX_GetParam("CONTENT_TYPE", request.envp);
char *delim = strchr(delimStr, '=');
delim++;
//delimStrdelim.substr(delim.find("=") + 1);
char *length = FCGX_GetParam("CONTENT_LENGTH", request.envp);
char *buf = new char[atoi(length) + 1];
ofstream img;
char fileName[100];
char *fileNamePtr;
string fileType;
bool data = false;
int x = 0;
//FCGX_GetStr(buf, atoi(length) + 1, request.in);
//fileName = line.substr(line.find("filename=\"") + 1);
while (FCGX_GetLine(buf, atoi(length) + 1, request.in) > 0) {
if (!data) {
if (strstr(buf, delim) != NULL && img.is_open()) {
img.close();
//fileName[0] = '\0';
data = false;
} else if (buf == '\n') {
data = true;
} else {
sscanf(fileNamePtr,"filename=\"%[^\"]", fileName);
}
} else {
img.open(fileName, ios::binary);
img.write(buf, atoi(length) + 1);
}
}
img.close();