Új hozzászólás Aktív témák
-
yossarian14
tag
válasz
EQMontoya
#2801
üzenetére
Így írtam be, de elszállt a program, nem fut le. Gondolom valamit rossz helyre tettem.
void process(string fileName) {
cout << ++j << ": " << fileName << endl;
ifstream file(fileName);
string line;
const int size = 10*1024*1024;
char mybuffer [size];
file.rdbuf()->pubsetbuf(mybuffer,size);
while (getline(file, line))
{
}
} -
yossarian14
tag
válasz
EQMontoya
#2797
üzenetére
A c++ kódban a ciklusmag üres, direkt tesztelés céljából.
A Java kódom sokkal gyorsabb még úgy is, hogy a ciklusmagban komoly dolgok folynak (egy adatszerkezetet építek fel a memóriában a beolvasott szöveg alapján):
BufferedReader br = null;
try {
br = new BufferedReader(new FileReader(file));
String line;
while ((line = br.readLine()) != null) {
process(line);
}Köszi a segítséget!
-
yossarian14
tag
Sziasztok!
Miért van az, hogy Java-ban sokkal gyorsabb egy fájl soronkénti beolvasása, mint C++ ban?
Így néz ki a kódom:
void process(string fileName) {
cout << ++j << ": " << fileName << endl;
ifstream file(fileName);
string line;
while (getline(file, line))
{
}
}Elég nagy mennyiségű, 70GB-nyi szövegről van szó, úgyhogy elég fontos lenne a gyors olvasás és elég jelentős a különbség. Esetleg tudtok javasolni valami gyorsabb módszert c++-ban?
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Apple iPhone 13 Pro Max / 128GB / Kártyafüggetlen / 12Hó Garancia / Akku:86%
- ASUS ROG Z890-E Gaming Wifi lap Intel Core Ultra 7 265KF procival akciós áron garanciával eladó!
- MacBook, Apple M1 / M2 kompatibilis dokkolók, DisplayLink 4K, USB-C, Type-C
- Dell Precision 7550,15.6,FHD,i7-10850H,16GB DDR4,256GB SSD,Quadro T2000 4GB VGA,WIN11,LTE
- í kilenc! AKCIÓS PRECÍZIÓS KÉSZÜLÉK! 7560 i9-11950H 32GB RAM 1TB SSD Nvidia RTX A3000 6GB 1 év gar
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

