Condividi tramite


Funzione GetCurrencyFormatEx (winnls.h)

Formatta una stringa numerica come stringa di valuta per le impostazioni locali specificate in base al nome.

Nota L'applicazione deve chiamare questa funzione in preferenza a GetCurrencyFormat se progettata per l'esecuzione solo in Windows Vista e versioni successive.

 
Nota Questa funzione può formattare i dati che cambiano tra le versioni, ad esempio a causa di impostazioni locali personalizzate. Se l'applicazione deve rendere persistenti o trasmettere i dati, vedere Uso dei dati delle impostazioni locali persistenti.
 

Sintassi

int GetCurrencyFormatEx(
  [in, optional]  LPCWSTR            lpLocaleName,
  [in]            DWORD              dwFlags,
  [in]            LPCWSTR            lpValue,
  [in, optional]  const CURRENCYFMTW *lpFormat,
  [out, optional] LPWSTR             lpCurrencyStr,
  [in]            int                cchCurrency
);

Parametri

[in, optional] lpLocaleName

Puntatore a un nome delle impostazioni locali o a uno dei valori predefiniti seguenti.

[in] dwFlags

Flag che controllano l'operazione della funzione. L'applicazione deve impostare questo parametro su 0 se lpFormat non è impostato su NULL. In questo caso, la funzione formatta la stringa usando l'override dell'utente nel formato di valuta predefinito per le impostazioni locali. Se lpFormat è impostato su NULL, l'applicazione può specificare LOCALE_NOUSEROVERRIDE per formattare la stringa usando il formato di valuta predefinito del sistema per le impostazioni locali specificate.

Attenzione L'uso di LOCALE_NOUSEROVERRIDE è fortemente sconsigliato perché disabilita le preferenze dell'utente.
 

[in] lpValue

Puntatore a una stringa con terminazione Null contenente la stringa numerica da formattare. Questa stringa può contenere solo i caratteri seguenti. Tutti gli altri caratteri non sono validi. La funzione restituisce un errore se la stringa devia da queste regole.

  • Caratteri da "0" a "9"
  • Un separatore decimale (punto) se il numero è un valore a virgola mobile
  • Segno meno nella prima posizione del carattere se il numero è un valore negativo

[in, optional] lpFormat

Puntatore a una struttura CURRENCYFMT che contiene informazioni sulla formattazione della valuta. Tutti i membri della struttura devono contenere valori appropriati. L'applicazione può impostare questo parametro su NULL se la funzione usa il formato di valuta delle impostazioni locali specificate. Se questo parametro non è impostato su NULL, la funzione utilizza le impostazioni locali specificate solo per le informazioni di formattazione non specificate nella struttura CURRENCYFMT , ad esempio il valore stringa per il segno negativo utilizzato dalle impostazioni locali.

[out, optional] lpCurrencyStr

Puntatore a un buffer in cui questa funzione recupera la stringa di valuta formattata.

[in] cchCurrency

Dimensioni, in caratteri, del buffer lpCurrencyStr . L'applicazione può impostare questo parametro su 0 per restituire le dimensioni del buffer necessarie per contenere la stringa di valuta formattata. In questo caso, il buffer indicato da lpCurrencyStr non viene usato.

Valore restituito

Restituisce il numero di caratteri recuperati nel buffer indicato da lpCurrencyStr in caso di esito positivo. Se il parametro cchCurrency è 0, la funzione restituisce le dimensioni del buffer necessarie per contenere la stringa di valuta formattata, incluso un carattere null di terminazione.

La funzione restituisce 0 se non riesce. Per ottenere informazioni estese sull'errore, l'applicazione può chiamare GetLastError, che può restituire uno dei codici di errore seguenti:

  • ERROR_INSUFFICIENT_BUFFER. Le dimensioni del buffer fornite non sono sufficienti o non sono state impostate correttamente su NULL.
  • ERROR_INVALID_FLAGS. I valori specificati per i flag non sono validi.
  • ERROR_INVALID_PARAMETER. Uno dei valori dei parametri non è valido.

Commenti

A partire da Windows 8: Se l'app passa tag di lingua a questa funzione dallo spazio dei nomi Windows.Globalization , deve prima convertire i tag chiamando ResolveLocaleName.

Requisiti

   
Client minimo supportato Windows 2000 Professional [app desktop | App UWP]
Server minimo supportato Windows 2000 Server [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione winnls.h (include Windows.h)
Libreria Kernel32.lib
DLL Kernel32.dll

Vedere anche

CURRENCYFMT

GetCurrencyFormat

GetNumberFormatEx

Supporto per la lingua nazionale

Funzioni di supporto per il linguaggio nazionale