2011-09-23 17 views
7

पर कनवर्ट करें, मैं एक स्ट्रिंग के पहले अक्षर को कम केस अक्षर में बदलने का तरीका ढूंढ रहा हूं। मैं जिस कोड का उपयोग कर रहा हूं वह एक सरणी से यादृच्छिक स्ट्रिंग खींचता है, स्ट्रिंग को टेक्स्ट व्यू में प्रदर्शित करता है, और उसके बाद छवि प्रदर्शित करने के लिए इसका उपयोग करता है। सरणी के सभी तारों में उनका पहला अक्षर पूंजीकृत होता है लेकिन ऐप में संग्रहीत छवि फ़ाइलों में निश्चित रूप से पूंजी अक्षरों नहीं हो सकते हैं।एंड्रॉइड: स्ट्रिंग के पहले अक्षर को

String source = "drawable/" 
//monb is randomly selected from an array, not hardcoded as it is here 
String monb = "Picture"; 

//I need code here that will take monb and convert it from "Picture" to "picture" 

String uri = source + monb; 
    int imageResource = getResources().getIdentifier(uri, null, getPackageName()); 
    ImageView imageView = (ImageView) findViewById(R.id.monpic); 
    Drawable image = getResources().getDrawable(imageResource); 
    imageView.setImageDrawable(image); 

धन्यवाद!

उत्तर

15
if (monb.length() <= 1) { 
     monb = monb.toLowerCase(); 
    } else { 
     monb = monb.substring(0, 1).toLowerCase() + monb.substring(1); 
    } 
+0

सरल और प्रभावी! धन्यवाद – cerealspiller

8
public static String uncapitalize(String s) { 
    if (s!=null && s.length() > 0) { 
     return s.substring(0, 1).toLowerCase() + s.substring(1); 
    } 
    else 
     return s; 
} 
2

गूगल अमरूद उपयोगिताओं और पुन: प्रयोज्य घटकों के बहुत कुछ के साथ एक जावा पुस्तकालय है। क्लासपाथ में होने के लिए पुस्तकालय guava-10.0.jar की आवश्यकता है। निम्नलिखित उदाहरण विभिन्न CaseFormat रूपांतरणों का उपयोग करके दिखाता है।

import com.google.common.base.CaseFormat; 

public class CaseFormatTest { 

    /** 
    * @param args 
    */ 
    public static void main(String[] args) { 

    String str = CaseFormat.LOWER_CAMEL.to(CaseFormat.UPPER_UNDERSCORE, "studentName"); 
    System.out.println(str); //STUDENT_NAME 

    str = CaseFormat.UPPER_UNDERSCORE.to(CaseFormat.LOWER_CAMEL, "STUDENT_NAME"); 
    System.out.println(str); //studentName 


    str = CaseFormat.LOWER_HYPHEN.to(CaseFormat.UPPER_CAMEL, "student-name"); 
    System.out.println(str); //StudentName 

    str = CaseFormat.UPPER_CAMEL.to(CaseFormat.LOWER_HYPHEN, "StudentName"); 
    System.out.println(str); //student-name 
    } 

} 

आउटपुट की तरह:

STUDENT_NAME 
studentName 
StudentName 
student-name 
संबंधित मुद्दे