Estoy intentando implementar un método C# que pueda registrar un mensaje con una cadena de formato y una cantidad variable de argumentos de estilo printf. Idealmente, funcionaría de manera idéntica a la función C que pegué a continuación, aunque idiomática a C# por supuesto.Registrar un mensaje con un número variable de argumentos de estilo printf
static
void
LogMessage(const char * iFormat, ...)
{
va_list argp;
FILE * fp;
fp = fopen("log.txt", "a");
if (fp != NULL) {
va_start(argp, iFormat);
vfprintf(fp, iFormat, argp);
va_end(argp);
fprintf(fp, "\n");
fclose(fp);
}
}
Esta función es conveniente para mí, ya que me permite hacer las siguientes llamadas:
LogMessage("Testing");
LogMessage("Testing %s", "1 2 3");
LogMessage("Testing %d %d %d", 1, 2, 3);
Gracias, este es exactamente el tipo de cosa que estaba buscando. Tenía algunos de los elementos correctos, ¡pero no podía ponerlos en el "orden" correcto! –