Byla vydána verze 7.0 open source platformy pro správu vlastního cloudu OpenNebula (Wikipedie). Kódový název nové verze je Phoenix. Přehled novinek v poznámkách k vydání v aktualizované dokumentaci.
E-mailový klient Thunderbird byl vydán ve verzi 140.0 ESR „Eclipse“. Jde o vydání s dlouhodobou podporou, shrnující novinky v upozorněních, vzhledu, správě složek a správě účtů. Pozor, nezaměňovat s průběžným vydáním 140.0, které bylo dostupné o týden dříve.
Organizace Video Games Europe reprezentující vydavatele počítačových her publikovala prohlášení k občanské iniciativě Stop Destroying Videogames.
Společnost Raspberry Pi nově nabzí Raspberry Pi Camera Module 3 Sensor Assembly, tj. samostatné senzorové moduly z Raspberry Pi Camera Module 3.
Cathode Ray Dude v novém videu ukazuje autorádio Empeg Car (později Rio Car) z let 1999–2001. Šlo o jeden z prvních přehrávačů MP3 do auta. Běží na něm Linux. Vyrobeno bylo jen asi pět tisíc kusů, ale zůstala kolem nich živá komunita, viz např. web riocar.org.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.7.
Wayland byl vydán ve verzi 1.24.0. Jde o menší vydání po více než roce. Více funkcionality bývá přidáváno v průběžných vydáních Wayland Protocols.
Textový editor Geany byl vydán ve verzi 2.1. Jde o udržovací vydání po bezmála dvou letech. Obsahuje drobná vylepšení vyhledávání, aktualizace podpory zvýrazňování syntaxe a dále převážně opravy chyb.
Byly zveřejněny videozáznamy, dostupné také s prezentacemi přímo z programu, a také fotogalerie z open source komunitní konference DevConf.CZ 2025 konané od 12. do 14. června v Brně.
Navigace se soukromím CoMaps postavena nad OpenStreetMap je nově k dispozici v Google Play, App Store i F-Droid. Jedná se o komunitní fork aplikace Organic Maps.
#include <iostream> #include <fstream> using namespace std; int main() { // otevreni pro cteni i zapis fstream *dbFile = new fstream("file.txt", ios::in | ios::out | ios::binary); if (!dbFile->is_open()) { // soubor nelze otevrit cout << "Creating file" << endl; dbFile->open("file.txt", ios::out | ios::binary); // vytvoreni souboru if (!dbFile->is_open()) { cout << "Cannot create file" << endl; return 0; } dbFile->close(); // otevreni pro cteni i zapis dbFile->open("file.txt", ios::in | ios::out | ios::binary); if (!dbFile->is_open()) { cout << "Cannot open file after create" << endl; return 0; } if (!dbFile->write("AABB", 4)) cout << "Cannot write to file" << endl; dbFile->close(); } else cout << "Opening file" << endl; delete dbFile; return 0; }
#include <fstream> using namespace std; int main() { // jako fopen(..., "r+") => O_RDRW fstream *dbFile = new fstream("file.txt", ios::in | ios::out); if (!*dbFile) { dbFile->clear(); // jako fopen(..., "w+") => O_RDRW | O_TRUNC | O_CREAT dbFile->open("file.txt", ios::in | ios::out | ios::trunc); } if (!*dbFile) { perror("file.txt"); return 1; } if (!dbFile->write("AAXB", 4)) { perror("writing to file.txt"); return 1; } dbFile->close(); delete dbFile; return 0; }
delete dbFile;
i při chybě (nebo mít dbFile na zásobníku...). Ale podstatné je to volání dbFile->clear() a to, že dbFile->open() stačí volat dvakrát.
twofish uz te zrejme uspokojil:). jen bych dodal pro inspiraci jine reseni:
#include <iostream> #include <fstream> using namespace std; namespace { const string JMENO = "file.txt"; } int main() { fstream test; test.exceptions ( ifstream::eofbit | ifstream::failbit | ifstream::badbit ); try { test.open ( JMENO.c_str(), ios::in | ios::out | ios::binary | ios::trunc); } catch (ifstream::failure &e) { cerr << e.what() << ":"<< endl; perror ("Vyjimka otevreni/cteni ze souboru."); exit(1); } return 0; }
Tiskni
Sdílej: