У меня есть какие-либо обязательства, если я загружаю яйцо на CheeseShop?

CharsetDecoder должен быть тем, что Вы ищете, нет?

Много сетевых протоколов и файлов снабжают свои символы байтовым набором символов такой как ISO-8859-1 (ISO-Latin-1).
Однако собственная кодировка символов Java Unicode UTF16BE (Шестнадцатиразрядный Формат Преобразования UCS, обратный порядок байтов).

См. Charset . Это не означает UTF16, набор символов по умолчанию (т.е.: значение по умолчанию, "отображающееся между последовательностями шестнадцатиразрядных элементы кода Unicode и последовательностями байтов"):

Каждый экземпляр виртуальной машины Java имеет набор символов по умолчанию, который может или не может быть одним из стандартных наборов символов.
[US-ASCII, ISO-8859-1 иначе ISO-LATIN-1, UTF-8, UTF-16BE, UTF-16LE, UTF-16]
набор символов по умолчанию определяется во время запуска виртуальной машины и обычно зависит от локали и набора символов, используемого базовой операционной системой.

Этот пример демонстрирует, как преобразовать ISO-8859-1 закодированные байты в ByteBuffer к строке в CharBuffer и стих визы.

// Create the encoder and decoder for ISO-8859-1
Charset charset = Charset.forName("ISO-8859-1");
CharsetDecoder decoder = charset.newDecoder();
CharsetEncoder encoder = charset.newEncoder();

try {
    // Convert a string to ISO-LATIN-1 bytes in a ByteBuffer
    // The new ByteBuffer is ready to be read.
    ByteBuffer bbuf = encoder.encode(CharBuffer.wrap("a string"));

    // Convert ISO-LATIN-1 bytes in a ByteBuffer to a character ByteBuffer and then to a string.
    // The new ByteBuffer is ready to be read.
    CharBuffer cbuf = decoder.decode(bbuf);
    String s = cbuf.toString();
} catch (CharacterCodingException e) {
}

14
задан Geo 9 July 2009 в 22:34
поделиться

3 ответа

  1. Вы обязаны зарегистрировать пакет с полезным описанием. Нет ничего более разочаровывающего, чем найти пакет, который может быть хорошим, но вы не знаете, потому что нет описания.

    Типичный пример ленивого разработчика: http: // pypi. python.org/pypi/gevent/0.9.1

    Лучше: http://pypi.python.org/pypi/itty/0.6.0

    Фантастически (даже журнал изменений!): http://pypi.python.org/pypi/jarn.mkrelease/2.0b2

  2. В CheeseShop вы также можете просто зарегистрировать пакет, но не загружать код. Вместо этого вы можете указать свой собственный URL для загрузки. НЕ ДЕЛАЙТЕ ЭТОГО! Это означает, что ваше программное обеспечение становится недоступным, когда Cheeseshop не работает или , когда ваш сервер не работает. Это означает, что если вы хотите установить систему, использующую ваше программное обеспечение, шансы, что она выйдет из строя из-за того, что где-то не работает сервер, удваиваются. А с большой системой, когда у вас задействовано пять разных серверов ... Всегда загружайте пакет в CheeseShop, а также регистрируйте его!

  3. Вы также обязаны не удалять яйцо (кроме исключительных обстоятельств), как люди кто начинает зависеть от конкретной версии вашего программного обеспечения, потерпит неудачу, если вы удалите эту версию.

    Если вы больше не хотите поддерживать программное обеспечение, загрузите новую версию с большим жирным шрифтом «ЭТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ, ПОДДЕРЖИВАЕМОЕ БОЛЬШЕ НЕ "или что-то в этом роде, поверх описания.

    И не загружайте разрабатываемые версии, например, «0.1dev-r73183».

  4. И хотя у вас может не быть «обязательств» по ​​лицензированию вашего программного обеспечения, вы должны это сделать, иначе загрузка станет бессмысленной. Если вы не уверены, используйте GPL.

Вот и все, что касается меня. Извините за разглагольствования. ; -)

9
ответ дан 1 December 2019 в 13:59
поделиться

Вам потребуется лицензировать код. Несмотря на то, что некоторые могут подумать, авторам контента на самом деле нужно предоставлять лицензию самостоятельно. Сырный магазин не может предоставить другим людям лицензию на использование контента, пока вы не предоставите его как правообладателю.

3
ответ дан 1 December 2019 в 13:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: