Convert chinese character to unicode

hello,i have a problem.
how can i know the unicode of chinese character in a file?
like this character ' 称 ' in a file a.txt
then how can i do to read the a.txt file then get the unicode of the character?
really need help..

i want to know what is the algorithm and the coding
of that tool.
thanksYou might consider downloading the open source project and looking directly at the code for that tool. I imagine that you could create something similar in...oh, maybe 25 lines of code.
retrieve the command line args
open the specified file using the charset encoding specified
for (all characters in the file) {
if character is > 0xFF convert to \uXXXX
output character to new file
John O'Conner

Similar Messages

  • Converting a character to Unicode

    Hello, im a first year java student and am currently taking a class in java where my teacher refuses to teach...........
    anyways, nuff bout my sob story, i was wondering what the line of code was that is used in converting a single character into unicode. Can anyone help?
    (Yes im well aware i suck at java, thats why im still learning ;) )
    Thanx in advance.

    I wrote this a while ago...see if it helps
    * Written by: Evans Anyokwu
    * Date : 28-Feb- 2002
    * Purpose : Helps convert numbers to various formats
    * import the java IO to enable the use of the streams
    import java.io.*;
    * The class decleration "Converter class"
    public class Converter
    public static void main (String [] arges) throws IOException
    * Making use of the BufferedReader class to get the
    * input from the keyboard.
    java.io.BufferedReader keyBoard = new java.io.BufferedReader (
    new InputStreamReader (System.in));
    * Prompts the user to enter anything to be converted.
    System.out.print ("Enter a string: ");
    * Get the user input as stream from the keyboard.
    String entered = keyBoard.readLine ();
    * Loop throught the input and select the char at every
    * point
    for (int i = 0 ; i < entered.length () ; i++)
    char c = entered.charAt (i);
    * Print the char at (i) and convert it to a unicode.
    //System.out.println (Integer.toBinaryString (c));
    System.out.print ("\\u00" + Integer.toHexString (c));
    //System.out.println (Integer.toOctalString (c));

  • How to convert ut8-8 to unicode

    Hi guys,
    For instance, I got a textbox and a user enter some Chinese characters in it. My page will need to put this string as a parameter to the other page. how should I convert these chinese character to unicode? At my servlet side, how should I put this unicode back to ut8-f in order to pass to database for searching? Thanks in advance !
    regards,
    Mark

    Hi,
    For instance, I enter &#36335; in google search then i will see one of it parameter with the url like this:
    q=%E8%B7%AFwhich is i guess is utf-8 based 16.
    any anyone know any javascript can convert &#36335; -> %E8%B7%AF and vice versa?
    when this %E8%B7%AF string send to servlet side, how do I convert it back to text for database to search ? Pls help, Thanks !

  • Chinese characters to Unicode Escape

    I'd like to implement a function that convert Chinese string into Unicode escape codes. Just like what the native2ascii doing.
    I can convert single bytes with charToHex but have no clue on dealing double byte character. Any hints?

    I think unicode escapes can be obtained through the tool Native2Ascii from a file. However, if you would a code, the following might be an example.
    public class UnicodeTool{
    static String byteToHex(byte b) {
          // Returns hex String representation of byte b
          char hexDigit[] = {'0', '1', '2', '3', '4', '5', '6', '7','8', '9', 'a', 'b', 'c', 'd', 'e', 'f'};
          char[] array = { hexDigit[(b >> 4) & 0x0f], hexDigit[b & 0x0f] };
          return new String(array);
       }   // end of method byteToHex
        static String charToHex(char c) {
          // Returns hex String representation of char c
          byte hi = (byte) (c >>> 8);
          byte lo = (byte) (c & 0xff);
          return byteToHex(hi) + byteToHex(lo);
       }   // end of method charToHex
    static String toUnicodeFormat(char c){
               // int n = (int)c;
               //String body = Integer.toHexString(n);
               String body=charToHex(c); 
                String zeros = "000";
                 return ("\\u" + zeros.substring(0, 4-body.length()) + body);
        } //end of method toJavaUnicodeFormat
    /*   public static void main(String[] args){
        String str = "09Az";//example of a string
        char[] chs = str.toCharArray();
        for(int j=0;j<chs.length;j++)
         System.out.println(toUnicodeFormat(chs[j]));
    }

  • Approach to converting database character set from Western European to Unicode

    Hi All,
    EBS:12.2.4 upgraded
    O/S: Red Hat Linux
    I am looking for the below information. If anyone could help provide would be great!
    INFORMATION NEEDED: Approach to converting database character set from Western European to Unicode for source systems with large data exceptions
    DETAIL: We are looking to convert Oracle EBS database character set from Western European to Unicode to support Kanji characters. Our scan results show
    both “lossy (110K approx.)” and “truncation (26K approx.)” exceptions in the database which needs to be fixed before the database is converted to Unicode.
    Oracle Support has suggested to fix all open and closed transactions in the source Production instance using forms and scripts.
    We’re looking for information/creative approaches  who have performed similar exercises without having to manipulate data in the source instance.
    Any help in this regard would be greatly appreciated!
    Thanks for yourn time!
    Regards,

    There are two aspects here:
    1. Why do you have such large number of lossy characters? Is this data coming from some very old eBS release, i.e. from before the times of the Java applet interface to Oracle Forms?  Have you analyzed the nature of this lossy data?
    2. There is no easy way around truncation issues as you cannot modify eBS metadata (make columns wider). You must shorten or remove the data manually through the documented eBS interfaces. eBS does not support direct manipulation of data in the database due to complex consistency rules enforced by the application itself (e.g. forms).
    Thanks,
    Sergiusz

  • Retrieve the unicode from a chinese character stored in MS Access database

    Hi,
    I have a table in MS Access database with chinese character. When I read it from my sql queries I get the "?" instead of the chinese character. When I calculate the unicode I get the 003F which is the unicode for the questionmark. How do I get the correct unicode of the chinese character?
    Connection conn = DriverManager.getConnection("jdbc:odbc:myDB"); Statement stmt = conn.createStatement(); String sqlString = "SELECT Char FROM MyTable WHERE id=2"; ResultSet rs = stmt.executeQuery(sqlString); String s1 = rs.getString("Char");    // the s1 is the ? instead of the chinese character. byte[] b = s1.getBytes(Charset.forName("UTF-16")); int firstByte = 0; short anUnsignedByte = 0; String unicode = ""; for(int  n = 0; n < b.length; n++){     String temp = "";     firstByte = (0x000000FF & ((int)b[n]));     anUnsignedByte = (short)firstByte;     temp = Integer.toHexString(anUnsignedByte);     if(temp.length() == 1){ temp = "0" + temp;     }     unicode = unicode + temp; } unicode = unicode.substring(4); System.out.println("unicode: " + unicode);  //Here I get the unicode, 003f, for the question mark.

    Apparently getString() is already applying the wrong encoding to the bytes which are in the data, so you can't do anything with what it returns. (This isn't surprising since it's Access you are asking about.) I suggest using the getObject() method and see what it returns. If it returns the same string then you are out of luck. But maybe you'll get lucky and it will return an array of bytes containing the correct data. Don't get too hopeful though.

  • It's possible to convert 'WE8MSWIN1252' character to chinese character set?

    Hi All,
    Is anyone know how to convert "WE8MSWIN1252" character to chinese character set in order to display chinese word in oracle apex?
    My problem is i can't display chinese character set in oracle apex. The chinese field is showed like °×ѪÇò¼ÆÊý. I'm using WE8MSWIN1252 database character set.
    I'm wondering it's possible to show character word?
    I'm appreciating if anyone have a good solution to share with me.
    Thanks a lot in advance!
    Edited by: Apex Junior on Jul 16, 2010 2:18 PM

    WE8 is a Western European character set. If you wish to store and access a globalized multibyte character set you must have a database that supports it: You don't have one at the moment.
    Given this is Apex I'd suggest you read the docs and reinstall.
    Alternatively you could try CSSCAN and CSALTER and perhaps you can make the change but be very careful and have a good backup before you try.
    http://www.morganslibrary.org/reference/character_sets.html

  • Do we need to convert Chinese/Japanese properties to Unicode?

    Dear friends,
    I am new to this Internationalization concept. I have a web application and I am looking forward to implement Internationalization.
    To make my app support muti-language, I am using Locale & Resource bundle to find properties files based on Country and Language. I have different properties files based on countries. This works fine when there are unicode characters and no special characters in the property file.
    For eg. the application doesn't displays Chinese/Japanese characters with System.out.println at all. It displays something weird symbols..
    P.S : I haven't converted Chinese/Japanese properties files to Unicode with native2ascii tool?
    An important question for me is,
    1) Do we need to convert Chinese/Japanese or any non-unicode related properties files with native2ascii tool?
    2) Is there any other way to read such properties files without converting them with native2ascii tool?
    3) We have made fixed UTF-8 format policy for the app. Is there any way to read those properties file with UTF-8 mechanism without need to convert the properties files?
    4) If anyone has quick example code for displaying Chinese/Japanese characters from properties file, then that would be a great help.
    Thanks a million. Any help would be highly appreciated.
    sachin

    System.out.println display depends on the system locale. If you are running on a US English system, Chinese and japanese will not display correctly in the console.
    Your properties file questions:
    1) Do we need to convert Chinese/Japanese or any non-unicode related properties files with native2ascii tool? yes
    2) Is there any other way to read such properties files without converting them with native2ascii tool? - no
    3) We have made fixed UTF-8 format policy for the app. Is there any way to read those properties file with UTF-8 mechanism without need to convert the properties files? no

  • How can i convert jstring to PSTR with chinese character

    Hi all,
    I'm not an expert of C++. So please help me to fix the following problem.
    I'm using jni to call the dll. In java side, the input parameter is jstring. In C++ side, the input parameter of PrintDrugReceipt are PSTR.
    The following is the code of my C++:
    #include <windows.h>
    #include <stdio.h>
    #include <jni.h>
    #include "DrugReceiptWrapper.h"
    #include "DrugReceipt.h"
    const char * JNU_GetStringNativeChars(JNIEnv *env, jobject obj, jstring jstr) {
    jbyteArray bytes = 0;
    jthrowable exc;
         jclass cls;
         jmethodID getBytes;
    char *result = 0;
    if ((*env)->EnsureLocalCapacity(env, 2) < 0) {
    return 0; /* out of memory error */
         cls = (*env)->GetObjectClass(env, obj);
         getBytes = (*env)->GetMethodID(env, cls, "getBytes","()[B");
         //jbyteArray buf = (jbyteArray*)(*env)->CallObjectMethod(env, obj, jlprSourceChiName, getBytes);
         bytes = (*env)->CallObjectMethod(env, jstr, getBytes);
         exc = (*env)->ExceptionOccurred(env);
         if (!exc) {
             jint len = (*env)->GetArrayLength(env, bytes);
             result = (char *)malloc(len + 1);
             if (result == 0) {
                 //JNU_ThrowByName(env, "java/lang/OutOfMemoryError", 0);
                 (*env)->DeleteLocalRef(env, bytes);
                 return 0;
    (*env)->GetByteArrayRegion(env, bytes, 0, len, (jbyte *)result);
    result[len] = 0; /* NULL-terminate */
    } else {
    (*env)->DeleteLocalRef(env, exc);
    (*env)->DeleteLocalRef(env, bytes);
    return result;
    JNIEXPORT jlong JNICALL
    Java_TestPrint_PrintDrugReceiptWrapper(
    JNIEnv *env, jobject obj,
    jstring jlprPrinterPort, jstring jlprSourceChiName,
    jstring jlprTargetChiName, jstring jlprPrintData1,
    jstring jlprPrintData2, jstring jlprCaseNo, jstring jlprReceiptNo){
         PSTR lprPrinterPort;
         PSTR lprSourceChiName;
         PSTR lprTargetChiName, lprPrintData1;
    PSTR lprPrintData2 , lprCaseNo, lprReceiptNo;
         printf("before %s", jlprSourceChiName);
         lprPrinterPort = (*env)->GetStringChars(env, jlprPrinterPort , 0);
         lprSourceChiName = (*env)->GetStringChars(env, jlprSourceChiName, 0);     
         lprTargetChiName = (*env)->GetStringChars(env, jlprTargetChiName, 0);
         lprPrintData1 = (*env)->GetStringChars(env, jlprPrintData1 , 0);
         lprPrintData2 = (*env)->GetStringChars(env, jlprPrintData2 , 0);
    lprCaseNo = (*env)->GetStringChars(env, jlprCaseNo , 0);
         lprReceiptNo = (*env)->GetStringChars(env, jlprReceiptNo , 0);
         PrintDrugReceipt(lprPrinterPort, lprSourceChiName, lprTargetChiName, lprPrintData1, lprPrintData2, lprCaseNo, lprReceiptNo);
         (*env)->ReleaseStringChars(env, jlprPrinterPort , lprPrinterPort);
         (*env)->ReleaseStringChars(env, jlprSourceChiName, lprSourceChiName);
         (*env)->ReleaseStringChars(env, jlprTargetChiName, lprTargetChiName);
         (*env)->ReleaseStringChars(env, jlprPrintData1 , lprPrintData1);
         (*env)->ReleaseStringChars(env, jlprPrintData2 , lprPrintData2);
         (*env)->ReleaseStringChars(env, jlprCaseNo , lprCaseNo);
         (*env)->ReleaseStringChars(env, jlprReceiptNo , lprReceiptNo);
         return 1;
    the h file:
    /* DO NOT EDIT THIS FILE - it is machine generated */
    #include <jni.h>
    /* Header for class TestPrint */
    #ifndef _Included_TestPrint
    #define _Included_TestPrint
    #ifdef __cplusplus
    extern "C" {
    #endif
    * Class: TestPrint
    * Method: PrintDrugReceipt
    * Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)J
    JNIEXPORT jlong JNICALL Java_TestPrint_PrintDrugReceiptWrapper
    (JNIEnv *, jobject, jstring, jstring, jstring, jstring, jstring, jstring, jstring);
    #ifdef __cplusplus
    #endif
    #endif
    Note: the jstring input parameters are the chinese character. If i print out the jstring, it will display dirty character, why? and how to fix it? and the PrintDrugReceipt will expected accept the chinese character and print it to the printer.
    Thank you for you guys help.
    Matthew

    you can't use char...have to use a wchar....and look around at the wide character handling function in C/C++.

  • Convert Chinese on the fly

    Dear all,
    I have a DB which the NLS_CHARACTERSET is UTF8.
    In a table, we have a column which set as varchar2 data type.
    Users will put content into it (which some times are traditional chinese, and sometimes are simplified chinese).
    Based on the new user requirements, I need to:
    1. identify those records with traditional chinese / simplified chinese
    - I read from the web that I may use the dump function to do so. However, I did some tests and it seems incorrect. Any tips on this?
    2. Convert the characters on the fly
    - is it possible that I convert the column into all traditional chinese / simplified chinese when I select / export / view?
    - I heard that the function convert may help but I can't make it works. Any help on these two issues are very appreciated. many thx.

    The data in the VARCHAR2 column should encoded using the UTF-8 Unicode encoding. It should not be either simplified or traditional Chinese.
    If the client application is accepting data using the traditional Chinese character set, that data should be converted to the database character set transparently by the SQL*Net layer when it is sent over the wire based on the client's NLS settings. Similarly, if the client application is accepting data using the simplified Chinese character set, the data should be converted to the database character set when it is sent over the wire based on that client's NLS settings. Similarly, when you select data, the client's NLS settings should indicate the character set that the client application wishes the data to be converted to and that should be done transparently by the Oracle SQL*Net layer.
    Justin

  • GUI_DOWNLOAD give 2 bytes for each chinese character - I need fixed length

    Due to the Unicode system takes each Chinese character as a byte, the field(10) can take 10 Chinese Characters, not like before only 5 characters allowed.
    The problem is when the data is downloaded to a txt file. Some records contains only Western Europe charactes and will fill 10 bytes in the output file and other records contains only Chinese characters and will fill up 20 bytes in the output file.
    The data is exported for a system that can upload chinese characters, but only allow fixed record length file (always 10 bytes).
    In other words: the records with Western Europe characters should contain 10 characters = 10 bytes but the records with Chinese characters should only contain 5 characters = 10 bytes.
    Anyone who can solve this, thanks in advance.
    My code:
      CALL METHOD CL_GUI_FRONTEND_SERVICES=>GUI_DOWNLOAD
        EXPORTING
          FILENAME                = p_file
          CONFIRM_OVERWRITE       = 'X'
          codepage                = '8400' "Chinese
        CHANGING
          DATA_TAB                = it_output
        EXCEPTIONS

    Hi Thomas,
    Now I understand.
    Pl. check the class CL_ABAP_CONV_X2X_CE.
    May it can help u.
    Here is it's documentation.
    CL CL_ABAP_CONV_X2X_CE
    Short Text
    Code Page and Endian Conversion Between External Formats
    Functionality
    Instances of the class CL_ABAP_CONV_X2X_CE allow you to convert text data between different character sets and numeric data between different number formats (byte order).
    Using the class corresponds to transforming data from a binary input stream to a binary output stream: The data objects are read from the input buffer sequentially and written to an output buffer.
    The class methods are normally used as follows:
    CL_ABAP_CONV_X2X_CE=>CREATE
    This creates a conversion instance. Among other options, you can specify the following as parameters: The input buffer (that is the binary string that contains the data to be read), the character format at used in the input buffer, the byte order used in the input buffer, the character format to be used in the output buffer, or the byte order to be used in the output buffer.
    CONVERT_C, CONVERT_...
    This converts the data. Calling this method several times consecutively allows you to read data from the input buffer sequentially and add it to the end of the output buffer.
    GET_OUT_BUFFER
    This gets the output buffer, making it available for further processing (such as writing to a file, sending using RFC).
    RESET
    This allows you to reset individual attributes of the conversion instance. (This method is especially designed for restarting on a new input buffer and deleting the output buffer while retaining the remaining attributes.)
    Relationships
    CL_ABAP_CONV_IN_CE
    Converting Binary Data into ABAP Data Objects
    CL_ABAP_CONV_OUT_CE
    Converting ABAP Data Objects to a  Binary Format.
    CL_ABAP_CHAR_UTILITIES
    Various Attributes and Methods for Character Sets and Byte Order
    Example
    In the following example, UTF-8 texts are converted to the codepage 1100 (Latin-1) and numbers are converted from little-endian to big-endian format:
    DATA:
      in_buffer TYPE XSTRING,
      out_buffer TYPE XSTRING,
      conv TYPE REF TO cl_abap_conv_x2x_ce.
    in_buffer = '414220C3B602010000'.
    conv = cl_abap_conv_x2x_ce=>create(
             in_encoding = 'UTF-8'
             in_endian = 'L'
             out_encoding = '1100'
             out_endian = 'B'
             input = in_buffer
    CALL METHOD conv->convert_c( n = 5 ).
    CALL METHOD conv->convert_i( ).
    out_buffer = conv->get_out_buffer( ).
    The content of the in_buffer variable is made up of  5 bytes (hexadecimal "414220C3B6"), which represent 4 UTF-8 characters (A, B, SPACE, o-Umlaut), and 4 bytes (hexadecimal "02010000"),  which represent the value 258 in little-endian format. This data is converted and the out_buffer variable now contains the hexadecimal string "414220F600000102". It is made up of:
    4 bytes (hexadecimal "414220F6"), which represent the above  4 characters in codepage 1100 (ISO-8859-1). Note that the length specification n = 5 refers to the number of elementary characters to be converted. For multi-byte codepages like UTF-8 this means that the multi-byte character "C3B6" is counted in length 2.
    4 Bytes (hexadecimal "00000102"), which represent the value 258 in big-endian format.
    If you have the desired byte order in the old format as expected by TRANSLATE ... NUMBER FORMAT (as an N(4) value), you can proceed as follows:
    TYPE-POOLS: ABAP.
    CLASS cl_abap_char_utilities DEFINITION LOAD.
    DATA:
      in_number_format(4) TYPE N VALUE '0101',
      out_number_format(4) TYPE N VALUE '0000'.
    DATA:
      in_endian TYPE ABAP_ENDIAN,
      out_endian TYPE ABAP_ENDIAN,
      conv TYPE REF TO cl_abap_conv_x2x_ce..
    in_endian  = cl_abap_char_utilities=>number_format_to_endian(
                   in_number_format
    out_endian = cl_abap_char_utilities=>number_format_to_endian(
                   out_number_format
    conv = cl_abap_conv_x2x_ce=>create(
             in_encoding = 'UTF-8'
             in_endian = in_endian
             out_encoding = '1100'
             out_endian = out_endian
             input = in_buffer
    Notes
    For details refer to the documentation for the individual methods.
    Regards,
    Joy.

  • Chinese character overlap in PDF file

    Hi guyz,
    I am working on the issue on Chinese character overlap in PDF file.
    There is smartform which is being used to generate ePaySlip(Comes in email) in PDF file format which contains Chinese and English both characters.
    Now the issue is that at the bottom of the ePaySlip there is a Remark section which is maintained in Chinese and English both. However, the English sentences are proper withour any problem whereas the same thing in Chinese is showing as distorted/overlapped in few words.
    Can anyone suggest what could be the cause and suggest some solution.
    As when I checked in smartform those characters are hard coded and Chinese characters are shown as ###.
    Please response, I would be really grateful.
    Thanks & Regards,
    Mini

    Hi,
    there a different things to know.
    I produce sapscript forms with cinese and english characters for frontend / backend and archiv printing.
    Please check:
    Editor displays ###: You have to install the chinese language in your e.g. windows-system to display them.
    Script: You have to chose the the font family "CNSONG" (customized for chinese simplified and LATIN).
    Transaction I18N: May you have to set correct subfonts for the unicode areas (Cascading fonts, Standard is Courier).
    You can print in different ways:
    For archiv/PDF: Install the unicode truetype font with chinese characters for the pdf-converter.
    For Frontend: Use the Frontendprinter SAPWIN or SAPWIN*CF (Cascading Font) to send it to the gui (note: SAPLPD does not support it, use the newer technology.....)
    Backend printing: POSTSCRIPT is not yet implemented :-((
    PLease note: What you see in spool / print preview is a simulation of the possible print, but backend print is not frontend preview!!!!
    Regards,
    Christian

  • Converting Chinese Characters from UTF-8 to GB2312

    Hi,
    I need to interact with an external system that only accepts GB2312 encoded strings as input.
    I have a site that is used to capture user input before feeding the data to the system. (Refer to the following)
    <%
    String strName = request.getParameter("strName");
    boolean serviceStatus = false;
    if (request.getParameter("strName") != null)
    serviceStatus=invokeTheService(strName,"text_process");
    %>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    How can i encode the "strName" variable value to "GB2312". (Do be informed that i am unable to change the meta Content-Type to GB2312)
    I had tried using the following but was unable get it right.
    strName = new String(strName.getBytes("UTF-8"),"GB2312");
    I had also tried using the CharsetEncoder.encode to attempt to encode it to GB2312 but kept getting a UnmappableCharacterException message.
    *Correct me if i'm wrong, but UTF-8 tends to represent characters in 1,2 or 3 bytes.
    In the case of chinese characters, each character is represented by 3 bytes.
    GB2312 tends to represent each character in 2 bytes.
    So if i have a 3 chinese character as input, the original strName.length() would return 9. whereas the Gb2312 encoded strName should return 6 ?

    KeithTan wrote:
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    How can i encode the "strName" variable value to "GB2312". (Do be informed that i am unable to change the meta Content-Type to GB2312)Then what is the point of converting to GB2312 if you inform the recipient that it is encoded as something other than GB2312?
    >
    I had tried using the following but was unable get it right.
    strName = new String(strName.getBytes("UTF-8"),"GB2312");That can never ever be right. Java Strings are UNICODE encoded as UTF16. They are always encoded internally as UTF16 so your code says - convert the string to UTF8 bytes and then, even though they are UTF8 bytes and not GB2312 bytes, treat them as GB2312 bytes. That will almost certainly corrupt the String
    >
    I had also tried using the CharsetEncoder.encode to attempt to encode it to GB2312 but kept getting a UnmappableCharacterException message.Even if Java does support GB2312 then it is a wast of time sending GB2312 content to a client and telling the client that it is UTF-8 .

  • Cannot insert Chinese character into nvarchar2 field

    I have tested in two environments:
    1. Database Character Set: ZHS16CGB231280
    National Character Set: AL16UTF8
    If the field type of datatable is varchar2 or nvarchar2, the provider can read and write Chinese correctly.
    2. Database Character Set:WE8MSWIN1252
    National Character Set: AL16UTF8
    The provider can not read and write Chinese correctly even the field type of datatable is nvarchar2
    I find that for the second one, both MS .NET Managed Provider for Oracle and Oracle Managed Data Provider cannot read and write NCHAR or NVARCHAR2 fields. The data inserted into these fields become question marks.
    Even if I changed the NLS_LANG registry to SIMPLIFIED CHINESE_CHINA.ZHS16CGB231280, the result is the same.
    For the second situation, only after I change the Database Character Set to ZHS16CGB231280 with ALTER DATABASE CHARACTER SET statement, can I insert Chinese correctly.
    Does any know why I cannot insert Chinese characters into Unicode fields when the Database Character Set is WE8MSWIN1252? Thanks.
    Regards,
    Jason

    Hi Jason,
    First of all, I am not familiar with MS .NET Managed Provider for Oracle or Oracle Managed Data Provider.
    How did you insert these Simplified Chinese characters into the NVARCHAR2 column ? Are they hardcoded as string literals as part of the SQL INSERT statement ? If so, this could be because, all SQL statements are converted into the database character set before they are parsed by the SQL engine; hence these Chinese characters would be lost if your db character set was WE8MSWIN1252 but not when it was ZHS16CGB231280.
    Two workarounds, both involved the removal of hardcoding chinese characters.
    1. Rewrite your string literal using the SQL function UNISTR().
    2. Use bind variables instead of text literals in the SQL.
    Thanks
    Nat

  • Send PO Mail with PDF File that Chinese character doestn't display

    Send PO Mail with PDF File that Chinese character doestn't display.
    I am using RSTXPDFT4, unicode ECC6.0
    Some computer Adobe Reader can read the file, but some computer cannot read, just a blank page.
    Thanks.

    Hi
    I worked for one client-chinese where we have to print chinese & english ( bilingual).You need to have dricer program which could identify both scripts .You are right ( unicode0
    Please check for the driver program : TWPDF : PDF converter Chinese in SPAD setting.
    SAP note is available.I will check and let you update .
    Edited by: sunny on Oct 28, 2009 10:29 AM

Maybe you are looking for

  • New 80GB iPOD mounts and then spinning ball on dismount :(

    Brand new ipod for my MBPro. Plug it in and works fine and then when I try and eject, about 50% of the time it hangs and I get the spining ball and everything basically is screwed. Doesn't happen on my other machine (Macbook) or with other ipods I ow

  • Create Billing Document From Sales Order

    I have used a program from this form to create a sales order - works great. Now, all I want to do is add some code to create a Billing Document in this program right after I have create the sales order. Can anyone help.

  • Function mudule to remove leading zeros of curreny and decimal type field

    Hi Expers, can any body suggest me the function mudule to remove leading zeros of curreny and decimal type  fields. plz do reply as early as possible. Thanks ..... sunil.

  • I have put an album into itunes

    I have put an album into iTunes. The album art shows in the get info box. But the album art will not display in the artwork box by the track listings. Please help.

  • Firefox won't update past 3.6.9

    Was looking to update my pc to Firefox 4.0, since it hasn't automatically updated. When I went to check for updates it said download paused on 3.6.10 and when trying to get it to update, it simply says connecting to the update server for a time and t