Ich möchte für einen User einen eigenen Dateinamen erstellen.
Leider gibt es ungültige Zeichen im Namen des Users.
Z.B. "Sören%&*33"
Deshalb kann ich keine Datei mit dem Namen: "Sören%&*33.txt" erstellen.
Gibt es einen En- und Decoder, der das möglich macht?
Oder hat jemand eine andere Lösung parat?
Encoder für ungültige Zeichen im Dateinamen
-
- Beiträge: 700
- Registriert: 19.10.2014 15:51
- Kontaktdaten:
Encoder für ungültige Zeichen im Dateinamen
Ich programmiere nur noch mit Linux.
Linux Mint 21.x
Linux Mint 21.x
Re: Encoder für ungültige Zeichen im Dateinamen
suche dir eine Liste mit Zeichen, die nicht in Filenamen vorkommen dürfen für dein Betriebssystem/Filesystem
und ersetze im dateinamen einfach alle diese zeichen durch ein von dir bestimmtes zeichen.
ReplaceString() ist hier die Anlaufstelle in der Hilfe.
und ersetze im dateinamen einfach alle diese zeichen durch ein von dir bestimmtes zeichen.
ReplaceString() ist hier die Anlaufstelle in der Hilfe.
PureBasic 6.21 (Windows x86/x64) | Windows11 Pro x64 | AsRock B850 Steel Legend Wifi | R7 9800x3D | 64GB RAM | GeForce RTX 5080 | ThermaltakeView 270 TG ARGB | build by vannicom
Re: Encoder für ungültige Zeichen im Dateinamen
here is a link to a discussion how to remove NonWordCharacters.
With a little change this might solve your problem!
https://www.purebasic.fr/english/viewto ... ag#p604821
With a little change this might solve your problem!
https://www.purebasic.fr/english/viewto ... ag#p604821
-
- Beiträge: 700
- Registriert: 19.10.2014 15:51
- Kontaktdaten:
Re: Encoder für ungültige Zeichen im Dateinamen
Danke! Thank you 

Ich programmiere nur noch mit Linux.
Linux Mint 21.x
Linux Mint 21.x
- TroaX
- Beiträge: 684
- Registriert: 08.03.2013 14:27
- Computerausstattung: PC: Ryzen 9 3950X, 96 GB RAM, RX6800XT, 2.5 TB SSD, 21:9 Display, Linux Mint | Lappi: Ryzen 7 5800H, 16 GB RAM, 1 TB SSD, Linux Mint
- Wohnort: NRW
- Kontaktdaten:
Re: Encoder für ungültige Zeichen im Dateinamen
Ich würde eher Whitelisting als Blacklisting verwenden. Nutze eher eine Liste an Zeichen, die du erlauben willst und ersetze alle anderen. Das hat 2 Vorteile. Die Liste kannst du auch selbst erstellen. Zum zweiten kannst du damit sicher alles ausschließen. Auch die, an die du nicht gedacht hast.
Wenn der Dateinamen nur technischen Hintergrund hat, dann nutze ich persönlich immer ein Hash. Der ist immer gültig und von Menschenhand schwerer zuweisbar, was je nach Anwendung ggf. die Sicherheit erhöhen kann.
Wenn der Dateinamen nur technischen Hintergrund hat, dann nutze ich persönlich immer ein Hash. Der ist immer gültig und von Menschenhand schwerer zuweisbar, was je nach Anwendung ggf. die Sicherheit erhöhen kann.
PC: Ryzen 9 3950X | 96 GB RAM | RX6800XT | 2,5 TB NVMe | Linux Mint
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Linux Mint
NAS: Fritz.Box 5690 Pro (Nur für Keepass-DB)
Coding: Purebasic, Spiderbasic, GDevelop, Javascript/Node
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Linux Mint
NAS: Fritz.Box 5690 Pro (Nur für Keepass-DB)
Coding: Purebasic, Spiderbasic, GDevelop, Javascript/Node
Re: Encoder für ungültige Zeichen im Dateinamen
Alternativ eine eindeutige ID für jeden Benutzer erstellen und die ID als Dateiname verwenden.
... oder bei der ersten Vergabe des User-Namen grundsätzlich nur solche Zeichen zulassen, die auch für Dateinamen verwendet werden können.
Dann erspart man sich das codieren von Zeichen.
... oder bei der ersten Vergabe des User-Namen grundsätzlich nur solche Zeichen zulassen, die auch für Dateinamen verwendet werden können.
Dann erspart man sich das codieren von Zeichen.
Windows 10
PB Last Final / (Sometimes testing Beta versions)
PB Last Final / (Sometimes testing Beta versions)
-
- Beiträge: 700
- Registriert: 19.10.2014 15:51
- Kontaktdaten:
Re: Encoder für ungültige Zeichen im Dateinamen
Lauter tolle Ideen! Danke!
Ich programmiere nur noch mit Linux.
Linux Mint 21.x
Linux Mint 21.x