Fix formatting of bytes transferred

This commit is contained in:
2025-08-11 20:08:26 -04:00
parent 63ffbc8cc8
commit 5756642ddb
2 changed files with 13 additions and 3 deletions

View File

@@ -8,6 +8,7 @@
class Utility
{
public:
static String formatNumber(size_t number,bool commas=true);
static String formatNumber(long number,bool commas=true);
static String formatNumber(double number,bool commas=true);
static String formatNumber(double number,int places=2);
@@ -59,6 +60,15 @@ String Utility::bytesTransferredToString(double bytesTransferred)
return Utility::formatNumber(roundedValue,2) + "B/s";
}
inline
String Utility::formatNumber(size_t number, bool commas)
{
String formattedString;
String format="%lu";
::sprintf(formattedString.str(),format,number);
return addCommas(formattedString);
}
inline
String Utility::formatNumber(long number,bool commas)
{

View File

@@ -95,7 +95,7 @@ bool SocketConnectionReceiver::handlePut(Block<String> &commands)
totalBytesRead+=bytes_read;
if(bufferLength!=bytes_read)
{
std::cout << "Send/Receive size mismatch. The client indicated a data length of " << bufferLength << " but a data length of " << bytes_read << " was received";
std::cout << "Send/Receive size mismatch. The client indicated a data length of " << Utility::formatNumber(bufferLength) << " but a data length of " << Utility::formatNumber(bytes_read) << " was received";
break;
}
writeFile.write(&receiveBuffer[0], receiveBuffer.size());
@@ -106,12 +106,12 @@ bool SocketConnectionReceiver::handlePut(Block<String> &commands)
double elapsedTimeSeconds = profiler.elapsed()/1000.00;
double bytesPerSecond = totalBytesRead / elapsedTimeSeconds;
String strBytesPerSecond = Utility::bytesTransferredToString(bytesPerSecond);
std::cout << "Transferred " << totalBytesRead << " of " << fileLength << " " << percent << " percent " << strBytesPerSecond << std::endl;
std::cout << "Transferred " << Utility::formatNumber(totalBytesRead) << " of " << Utility::formatNumber(fileLength) << " " << percent << " percent " << strBytesPerSecond << std::endl;
}
}
std::cout << "Transfer complete" << std::endl;
std::cout << "Received " << totalBytesRead << " in " << Utility::formatNumber(profiler.end()) << "(ms)" << std::endl;
std::cout << "Received " << Utility::formatNumber(totalBytesRead) << " in " << Utility::formatNumber(profiler.end()) << "(ms)" << std::endl;
writeFile.close();
return totalBytesRead==fileLength;
}