Open sandwwraith opened 4 years ago
I think it would be a good intermediate step to provide API for parsing Map<String,String>
before moving to full File/IO support.
At the moment I have to handle this case "manually".
Hi, here's the original creator of the YouTrack issue. Thank you very much for taking care of this. While work was actually done here, I was also working on a personal implementation of this functionality. However, I was not aware of the fact that there already exist ways of resolving the required primitive types of the model classes in the core lib. You may imagine that I had quite a struggle trying to implement the type resolving on my own. Anyway, I'm now somewhat relieved to see that I don't have to use my own version for this.
Apparently, the current issue is to get from the Map<String, String>
to an actual properties format string (and vice versa). If it is any help, here's what I've tried; I've written this quite a while ago. But as far as I can tell, even this part has already been taken care of, which is wonderful.
Can we expect this feature to appear in a new version in the near future?
PS, a few notes on the gist:
kotlinx.serialization.json.Json.kt
.properties
, most notably the different key-value separators. There is also an option specifying the comment char, which is currently not in use.java.util.Properties
to do the encoding/decoding.I would love to see this support:
What is your use-case and why do you need this feature?
Currently, Properties allow to parse
Map<String, Any>
object to a Kotlin class. Usually, such properties are loaded from configuration file. While we do not have multiplatform IO or files, we still can parse properties from a string contents of such file, since parsing line breaks/separators/etc is an additional amount of work.Originally reported here: https://youtrack.jetbrains.com/issue/KT-42716
Note: it is relatively easy task though with common collection operations.