Сделать первую букву строки в верхнем регистре (с максимальной производительностью)

Я провожу некоторое время, работая над этим, а также для приложения, с которым я был заключен контракт на сборку. В принципе, поскольку API в настоящее время стоит, это невозможно. Основная проблема - это класс UIImage STRIPS для всех данных EXIF, за исключением ориентации. Кроме того, функция сохранения в рулон камеры блокирует данные. Таким образом, в основном единственный способ захватить и поддерживать любые дополнительные данные EXIF ​​- это сохранить его в приватном «ролике камеры» в вашем приложении. Я также подал эту ошибку с яблоком и подчеркнул необходимость повторных обращений к разработчикам приложений, с которыми мы связывались. Надеемся, что когда-нибудь они их добавят. В противном случае это делает полностью привязанным к GEO тегирование, поскольку оно работает только в приложении «запаса» камеры.

ПРИМЕЧАНИЕ. Некоторые приложения в магазине приложений hack

g0] вокруг этого. К тому, что я нашел, напрямую обращаюсь к рулону камеры и сохраняю фотографии прямо на нее, чтобы сохранить данные GEO. Однако это работает только с фотокамерой / сохраненными фотографиями, а НЕ с остальной библиотекой фотографий. Фотографии, «синхронизированные» с вашим телефоном с вашего компьютера, имеют все данные EXIF, за исключением ориентации.

Я все еще не понимаю, почему эти приложения были одобрены (черт возьми, даже УДАЛИТЬ из ролика камеры) и наших приложение, которое ничего не удерживает.

391
задан dylan-myers 1 May 2019 в 12:27
поделиться

5 ответов

0
ответ дан Dinis Cruz 1 May 2019 в 12:27
поделиться

Самый простой способ использовать заглавные буквы:

1- Использование System.Globalization;

  // Creates a TextInfo based on the "en-US" culture.
  TextInfo myTI = new CultureInfo("en-US",false).

  myTI.ToTitleCase(textboxname.Text)

`

0
ответ дан Saad Khalid 1 May 2019 в 12:27
поделиться

Кажется, тут много сложностей, когда все, что вам нужно, это:

    /// <summary>
    /// Returns the input string with the first character converted to uppercase if a letter
    /// </summary>
    /// <remarks>Null input returns null</remarks>
    public static string FirstLetterToUpperCase(this string s)
    {
        if (string.IsNullOrWhiteSpace(s))
            return s;

        return char.ToUpper(s[0]) + s.Substring(1);
    }

Примечательные моменты:

  1. Это метод расширения.

  2. Если входное значение пустое или пустое, входное значение возвращается как есть.

  3. String.IsNullOrWhiteSpace был представлен в .NET Framework 4. Это не будет работать со старыми платформами.

2
ответ дан Stephen Kennedy 1 May 2019 в 12:27
поделиться

Проверьте, не является ли строка пустой, затем преобразовывают первый символ в верхний регистр и остальную часть их к нижнему регистру:

public static string FirstCharToUpper(string str)
{
    return str?.First().ToString().ToUpper() + str?.Substring(1).ToLower();
}
0
ответ дан 22 November 2019 в 23:28
поделиться

Возможное решение разрешить Вашу проблему.

   public static string FirstToUpper(this string lowerWord)
   {
       if (string.IsNullOrWhiteSpace(lowerWord) || string.IsNullOrEmpty(lowerWord))
            return lowerWord;
       return new StringBuilder(lowerWord.Substring(0, 1).ToUpper())
                 .Append(lowerWord.Substring(1))
                 .ToString();
   }
0
ответ дан 22 November 2019 в 23:28
поделиться
Другие вопросы по тегам:

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