我正在使用Node.js mysql并希望将MySQL查询的结果转换为json字符串。以下是我的代码;
int * GenerateSums(int a[], size_t n, int min, int max)
{
size_t k = max + 2 - min;
int *sums = new int[k];
for(size_t i = 0; i < k; i++) // clear sums
sums[i] = 0;
for(size_t i = 0; i < n; i++) // set number of instances
sums[1+a[i]-min]++;
for(size_t i = 1; i < k; i++) // convert to cumulative sums
sums[i] += sums[i-1];
return sums;
}
int CountInRange(int sums[], int a, int b)
{
return sums[b+1] - sums[a];
}
int main()
{
int a[] = {4,0,3,4,2,4,1,4,3,4,3,2,4,2,3,1};
int *sums = GenerateSums(a, sizeof(a)/sizeof(a[0]), 0, 4);
int cnt;
cnt = CountInRange(sums, 0, 0); // returns 1
cnt = CountInRange(sums, 3, 4); // returns 10
cnt = CountInRange(sums, 0, 4); // returns 16
delete[] sums;
return 0;
}
使用var mysql = require('mysql');
var connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '',
database: 'hkh'
});
connection.connect();
connection.query('SELECT * FROM hkh.monthly_XXX;', function (err, rows, fields) {
if (err) throw err;
//console.log('The solution is: ', rows[0].solution);
var jsonString = JSON.stringify(rows);
console.log('The solution is: ', jsonString);
});
connection.end();
有什么问题吗?当我将结果复制并粘贴到notepad ++时,json查看器说它不是格式正确的json字符串。
除了jsonString = JSON.stringify(rows);
之外还有其他方法可以转换为json字符串吗?
jsonString = JSON.stringify(rows);
看起来像这样;
jsonString
编辑:向所有帮助过的人道歉。原始代码工作正常。错误是由于Notepad ++插件中的问题和粗心的复制和粘贴。