BarraQDA / nvivotools

A range of tools to help you get more out of NVivo(tm)
GNU General Public License v3.0
46 stars 11 forks source link

translation from NVivo encoded strings to clear text throws a error #15

Open Stalkcomrade opened 1 year ago

Stalkcomrade commented 1 year ago

Thank you for the project!

I faced one error when I tried to normalise my .nvp file. The project was created with nvivo version QSRNVivo20.6. If I am not mistaken, the current way of decoding does not work for the new versions.

Currently, decoding throws a ValueError: chr() arg not in range(0x110000) as per following lines: https://github.com/BarraQDA/nvivotools/blob/55d0c5a386c10551c3c73ab20f5bbd9ff206d526/NVivo.py#L432-L434

What might the updated shift be?

jschultz commented 1 year ago

I haven't tried with such a recent version of NVivo. Can you take a look at the values of project['Title'] and project['Description']? Perhaps they have gotten rid of that strange shifting of values by 0x377.

Stalkcomrade commented 1 year ago

I actually wondered how did you come up with this value at the first place =)

It seems like this is the case or maybe they use a different way to encode it. So, project['Title'] has value of jcgbBJ1SpIysRRcqsZcoig==, which should correspond to zms-thinkAloud.

jschultz commented 1 year ago

I just did it by trial and error. :)

Looks like they have done something more devious this time. I'm not sure I'll be able to reverse engineer it. Might have to first save as NVivo for Mac and convert that one.