mimo że "binary" bufora jest przestarzałe, muszę go użyć: Piszę aplikację internetową wykorzystując węzeł js + express. Użytkownik może pobrać plik, a nazwa pliku będzie zniekształcone, jeśli nie używaćwęzeł js 's Buffer.toString (' binary ')
res.download(allpath,buf0.toString('binary'));
obserwować wartości (to chińska char):
console.log(new Buffer('牛'));
wyjściowa: Bufor, e7,89,9b
i
var buf0=new Buffer('牛');
console.log(new Buffer(buf0.toString('binary')));
wyjściowa: Bufor, c3, A7, c2,89, c2,9b
jakie znaczenie ma ten algorytm i dlaczego używa się binarnego toString?
Chodzi o to, var buf0 = nowy bufor ('牛'); Res.download (allpath, buf0.toString ('utf-8')) nie jest normalne (w przeglądarce zniekształcone.) I Var buf0 = new Buffer ('牛'); res.download (allpath, buf0.toString ('binary)) jest normalne. Ale dlaczego? Co zmienić utf-8 na binarny? – user1625647
Czy możesz podać kilka kodu znaczącymi błędami? Nie jestem pewien, czy zrozumiałem twój prawdziwy problem. – fsenart