Me he encontrado con este problema varias veces en el que me gustaría tener varias versiones del mismo archivo en el mismo directorio. La forma en que lo he estado usando C# es agregando un sello de tiempo al nombre del archivo con algo como esto DateTime.Now.ToString().Replace('/', '-').Replace(':', '.')
. ¿Hay una mejor manera de hacer esto?Adjuntar TimeStamp a un nombre de archivo
Respuesta
Puede utilizar DateTime.ToString Method (String)
DateTime.Now.ToString("yyyyMMddHHmmssfff")
string.Format("{0:yyyy-MM-dd_hh-mm-ss-fff}",DateTime.Now)
;
$"{DateTime.Now:yyyy-MM-dd_hh-mm-ss-fff}"
Hay siguientes especificadores de formato personalizado Y (años), M (mes), d (días), h (hora 12), H (hora 24) , m (minuto), s (segundo), f (segunda fracción ), F (segunda fracción, ceros finales se recortan), t (PM o AM) yz (zona horaria).
Con Método de extensión
Uso:
string result = "myfile.txt".AppendTimeStamp();
//myfile20130604234625642.txt
método de extensión
public static class MyExtensions
{
public static string AppendTimeStamp(this string fileName)
{
return string.Concat(
Path.GetFileNameWithoutExtension(fileName),
DateTime.Now.ToString("yyyyMMddHHmmssfff"),
Path.GetExtension(fileName)
);
}
}
En su lugar, agregar DateTime.Now.Ticks
es un poco más rápido ya que no creará 3 cadenas y el valor de las marcas siempre será único también.
Yo prefiero usar:
string result = "myFile_" + DateTime.Now.ToFileTime() + ".txt";
¿Qué hace ToFileTime()?
Convierte el valor del objeto DateTime actual a una hora de archivo de Windows.
tiempo de archivo
public long ToFileTime()
Un Windows es un valor de 64 bits que representa el número de intervalos de 100 nanosegundos transcurridos desde las 12:00 am, 1 de enero 1601 ANUNCIO (CE) Tiempo Universal Coordinado (UTC) Windows usa una hora de archivo para registrar cuando una aplicación crea, accede o escribe en un archivo.
que puede utilizar:
Stopwatch.GetTimestamp();
¡esto responde la forma en que obtienes la marca de tiempo !. añádalo a un archivo utilizando la clase Path y la manipulación de cadenas no es un problema. esto solo es una alternativa al método DateTime.ToString (String) o string.Format ("{0: aaaa-MM-dd_hh-mm-ss-tt}", DateTime.Now); – Joseph
Usted puede utilizar en lugar de abajo:
DateTime.Now.Ticks
- 1. Adjuntar TimeStamp en el nombre del archivo de registro del registrador util de Java
- 2. ¿Adjuntar archivo a un correo electrónico en python conduce a un nombre de archivo en blanco?
- 3. Adjuntar a un archivo de imagen
- 4. Adjuntar líneas a un archivo utilizando StreamWriter
- 5. Adjuntar un archivo txt en
- 6. Adjuntar un solo archivo a un correo electrónico
- 7. Cómo adjuntar un archivo a un correo electrónico con PowerShell
- 8. Javascript adjuntar caso a nombre de la clase
- 9. Convertir a UTC Timestamp
- 10. Adjuntar archivo mediante mailto URI
- 11. Java: convertir largo a Timestamp
- 12. Ruta a un archivo sin nombre base
- 13. SensorEvent.timestamp a absolute (utc) timestamp?
- 14. Adjuntar metainformación a un objeto en .NET
- 15. Adjuntar al final de un archivo con NSMutableString
- 16. ¿Cómo adjuntar una base de datos sin un archivo LDF?
- 17. Adjuntar punteros a QList
- 18. MongoDb timestamp
- 19. Javascript Conversión de hora humana a timestamp
- 20. Almacenamiento de C# datetime a postgresql TimeStamp
- 21. Cómo adjuntar metadatos a cada fotograma de un video
- 22. Adjuntar datos a la matriz de bytes
- 23. devolver un nombre de archivo
- 24. Adjuntar un elemento a una autocompleta de jQuery UI
- 25. C# ¿puedo crear un nombre de archivo dinámico con streamwriter?
- 26. Cómo adjuntar un archivo a un correo electrónico HTML utilizando Apache Commons Correo electrónico
- 27. Al pasar un nombre de archivo a un método, ¿debo usar FileInfo o un nombre de archivo simple?
- 28. Convertir DateTime.Now a un nombre de archivo de Windows válido
- 29. Adjuntar NSDictionary a otro NSDictionary
- 30. Adjuntar a la penúltima li
He añadido 'Path.GetDirectoryName (nombre del archivo)' para obtener la ruta completa al archivo. Luego reemplazó 'string.Concat()' con 'Path.Combine() 'the get the full filename. – gilu