R somehow ignores diacritics when I enter a character string. I am trying to setup utf-8 everywhere possible, but it keeps doing it. How do I make it keep the diacritics?
Example:
string <- "Marie Skłodowska-Curie"
string
Returns:
"Marie Sklodowska-Curie actions"
What I need (note the "ł"):
"Marie Skłodowska-Curie actions"
The same happens when I load a csv in utf-8 encoding and then try to use strings containing the "ł" character. R replaces it with "l".
For context, I am using RStudio.
I'm trying to show some data in a GS1 Datamatrix which has field separators (FNC1,GS) pass within the variable to a zpl template.
Originally, in ZebraDesigner I couldn't get zpl to allow me to pass the separators within the parameter/variable. The separators would only show as text within the data, not as control characters for the scanner. (I was able to pass the separators as Fix Data, however it needs to work with a parameter).
Alternatively, I was hoping to edit the zpl and concatenate the control characters and QR values into one printed data for the Datamatrix.
This is zpl using one variable QRCode: (This works but not with passed separators)
^BY208,208^FT448,1123^BXN,8,200,0,0,1,~
^FH\^FN18^FDQRCode^FS
This is using fixed data where FNC1 is \7E and GS is \1D: (This works but doesn't use variables/parameters)
^BY208,208^FT448,1123^BXN,8,200,0,0,1,~
^FH\^FD\7E188text234567890\1Dmoretext^FS
This is my attempt to concat the separators and variables QRData1...:
^BY208,208^FT448,1123^BXN,8,200,0,0,1,~
^FH\^FD\7E^FN18^FDQRData1^FN22^FD\1D^FDQRData2^FD\1D^FN23^FDQRData3^FS
Unfortunately, the QR code only shows the value for the last var QRData3
Escape your field seperator hex codes with an _ (underscore), not with a backslash.
And use only one ^FD command like in your second example.
For reference see the pages of the commands ^FD, ^FH and ^BX in the Zebra ZPL II Programming Giude
As the OP found out, the field seperator _d029 worked for him! This is the hex value (0xD029) for the control character.
More information can be found here:
Encode GS,RS, and EOT for Code 128 and PDF417
GS is ~029
RS is ~030
EOT is ~004
Example:
[)><RS>06<GS>13V12GG7<GS>1P029-102489-157<GS>NC-411-661478-1<RS><EOT>
Enter the data as:
[)>~03006~d02913V12GG7~0291P029-102489-157~029NC-411-661478-1~030~004
Encode GS,RS, and EOT for Data Matrix, Aztec, and QR Code
GS is ~d029
RS is ~d030
EOT is ~d004
Example:
[)><RS>06<GS>13V12GG7<GS>1P029-102489-157<GS>NC-411-661478-1<RS><EOT>
Enter the data as:
[)>~d03006~d02913V12GG7~d0291P029-102489-157~d029NC-411-661478-1~d030~d004
I have passed a string (literally) "E:\temp" to firefox browser (as default preference to saving file) but it got a value of E<tab>emp - it didn't work.
While I passed "E:\\temp" it got nothing (empty field which didn't work)
While I passed "E:%5Ctemp" it got E:%5Ctemp - this works but name of storage folder is %5Ctemp on disk E
How to escape backslash and \t to get E:\temp in that browser settings?
I am storing some character strings locally as UTF-8 and they might look something like "bären" I am then sending them off to the AdWords SOAP API to get some search volumes and I am being returned with something like this: "bären".
In R is there a way to get either "bären" to look like "bären" or vice versa so that I can "VLOOKUP"?
When I use the Encoding() function on "bären" it returns UTF-8 when I do the same on "bären" it returns unknown. If i then use the enc2utf8() function on the variable where "bären" is stored, it doesn't change what it is displaying but the Encoding() does then change to UTF-8.
When I don't use funky umlaut characters the API works just fine.
I have a text document that is a roster of licensees. I am looping through this document to create a html table of this data. I've come across names with non standard characters.
This is one of them
Aimeé
I tried running all the inputs through the following function, but when it comes across the above character it doesn't replace it.
Function ReplaceBadCharacters(ByVal input As String) As String
Return input.Replace(Chr(233), "é")
End Function
How can I replace each character with the html equivalent?
EDIT
When I debug the above function it shows the input as Aime[] and not Aimeé.
In Chrome it looks like this Aime�
You don't need to do that.
As long as your page is encoded as UTF8, the characters will work fine.
However, you do need to call Server.HtmlEncode to escape HTML special characters.
(Unless you're printing the strings in a <%: %> block or a Razor # block, which escapes them for you)
é is in the current ASCII char set. If you put that into the HTML, it will render correctly (just like how it shows up correctly in the browser when you look at this page)
but if you want to replace all instances of it, use this instead é
input.Replace("é", "é")