Package org.springframework.core.io.support

# Class LocalizedResourceHelper

java.lang.Object
org.springframework.core.io.support.LocalizedResourceHelper

public class LocalizedResourceHelper extends Object
Helper class for loading a localized resource, specified through name, extension and current locale.

Since:
  1.2.5
Author:
  Juergen Hoeller

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`DEFAULT_SEPARATOR`
The default separator to use in-between file name parts: an underscore.

## Constructor Summary

Constructors
Constructor
Description
`LocalizedResourceHelper()`
Create a new LocalizedResourceHelper with a DefaultResourceLoader.
`LocalizedResourceHelper(ResourceLoader resourceLoader)`
Create a new LocalizedResourceHelper with the given ResourceLoader.

## Method Summary

Modifier and Type
Method
Description
`Resource`
`findLocalizedResource(String name, String extension, Locale locale)`
Find the most specific localized resource for the given name, extension and locale:
`void`
`setSeparator(String separator)`
Set the separator to use in-between file name parts.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### DEFAULT_SEPARATOR

public static final String DEFAULT_SEPARATOR
The default separator to use in-between file name parts: an underscore.

See Also:
  - Constant Field Values

## Constructor Details

### LocalizedResourceHelper

public LocalizedResourceHelper()
Create a new LocalizedResourceHelper with a DefaultResourceLoader.

See Also:
  - `DefaultResourceLoader`

### LocalizedResourceHelper

public LocalizedResourceHelper(ResourceLoader resourceLoader)
Create a new LocalizedResourceHelper with the given ResourceLoader.

Parameters:
  `resourceLoader` - the ResourceLoader to use

## Method Details

### setSeparator

public void setSeparator(@Nullable String separator)
Set the separator to use in-between file name parts. Default is an underscore ("_").

### findLocalizedResource

public Resource findLocalizedResource(String name, String extension, @Nullable Locale locale)
Find the most specific localized resource for the given name, extension and locale:

The file will be searched with locations in the following order, similar to `java.util.ResourceBundle`'s search order:

- [name]_[language]_[country]_[variant][extension]
- [name]_[language]_[country][extension]
- [name]_[language][extension]
- [name][extension]

If none of the specific files can be found, a resource descriptor for the default location will be returned.

Parameters:
  `name` - the name of the file, without localization part nor extension
  `extension` - the file extension (for example, ".xls")
  `locale` - the current locale (may be `null`)
Returns:
  the most specific localized resource found
See Also:
  - `ResourceBundle`