I wish to write to a text file with a dictionary. There are three methods that I've seen and it seems that they are all valid, but I am interested in which one will be most optimized or efficient for reading/writing, especially when I have a large dictionary with many entries and why.

```py
    new_dict = {}

    new_dict["city"] = "Boston"

    # Writing to the file by string conversion
    with open(r'C:\\Users\xy243\Documents\pop.txt', 'w') as new_file:
        new_file.write(str(new_dict)) 

    # Writing to the file using Pickle

    import pickle
    with open(r'C:\\Users\xy243\Documents\pop.txt', 'w') as new_file:
        pickle.dump(new_dict, new_file, protocol=pickle.HIGHEST_PROTOCOL)

    # Writing to the file using JSON

    import json
    with open(r'C:\\Users\xy243\Documents\pop.txt', 'w') as new_file:
        json.dump(new_dict, new_file)

```