I think the topic creator wants to enumerate save files in a folder, and then process them based on their name.
I do not think Warcraft III has this functionality. If you want this for backups, consider using a value representing current save version and if the version is old, it writes out a backup copy of the existing save before updating it. This way if you break the codes by accident with a release, the players can manually restore their save files from the backup copy made during the migration.
If you want your code to be compatible with older versions, then this will likely require some very clever code system programming. Specifically you need to avoid depending on a sequence for writing or reading the data, with each saved value having a very strictly controlled identifier. When loading it processes the entire stream and then passes the detected identifiers on for loading. The load system then handles all identifiers it can understand, ignores any it does not and defaults sensibly for values it is missing. Even with all this it may still be prone to bugging by swapping between versions as older versions cannot guarantee the consistency of data for newer versions.