2012-01-01 9 views
2

化学式(SO4^2-)を作成する必要があります。NSAttributedStringのKCTSuperscriptAttributeName:プロパティが機能しないため、下付き文字と上付き文字を作成する最も簡単な方法はUTF-8文字を追加するようです。NSStringにUTF-8文字を追加するには?

通常の文字とutf-8文字でnsstringを作成することはできますか?

おかげ

答えて

3

NSString Reference「NSStringは、Unicode文字の配列、つまりテキスト文字列を表すために実装されています。

以下のように書くと便利です: NSString * myStr = @ "任意のUnicode文字が必要です";

デフォルトのテキストエンコードがユニコードであることを確認してください。

+0

デフォルトのテキストエンコードがユニコードであることを確認するにはどうすればよいですか? – Mahir

+0

また、私はあまりにutf-8文字にも慣れていないので、これを正しく読んだかどうかは分かりませんが、[ここ](http://www.macosxguru.net/article.php?story=) 20050330194837154)、文字をコピーして文字列に直接貼り付けるべきではありません。本当? – Mahir

+0

こんにちはMahir、最初の質問については、「テキスト編集」タブのXcodeの設定で設定を見つけることができます。 2番目はサイトが2005年に書かれ、[NSString](http://developer.apple.com/library/ios/#documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/Reference/NSString.html)は今すぐutf-8を直接使うことができます。例えば:NSString * utfstr = @ "中文"; NSLog(@ "utf str%@"、utfstr);結果は "utf str中文"でなければなりません。 –

3

はい。 NSStringを作成する通常の方法を知っていると仮定します。というutf8文字列からNSStringを作成する方法の1つがここにあります。

4

ジャスティンの答えは良いですが、私はあなたが本当に探しているかもしれないものだと思うがNSAttributedString(あなたのためのリンクのドキュメント)か、上付き、添字、およびそれ自体でNSStringを扱うことができない他の文字スタイルを追加することができますNSMutableAttributedString、です。

他のNSAttributedStringの質問は、this potentially related questionor this oneのようにここやGoogleを見てください。

これがあなたを助けてくれることを願っています!

+0

2番目のリンクは、実際に私の質問のもう1つです。私はNSAttributedStringのドキュメントを調べましたが、インターネットを検索して、NSAttributedStringの 'kSuperscriptAttributeName'プロパティが正しく動作しないと人々が言っ​​ていることがわかりました。 – Mahir

+0

上付き文字はうまくいきません私は[NSAttributedStringはiOS 4.0以降でしか利用できません](http://stackoverflow.com/questions/5905883/superscripted-ordinal-suffix-in-nsstring)を知っています。それを試して、それがあなたのために働くかどうか私に知らせてください。 –

+0

その回答は、気づいていないかもしれませんが、iOSではなくMac OSX向けのNSSupersciptAttributeNameを使用しています(http://stackoverflow.com/questions/7121449/nssuperscriptattributename-show-error) – Mahir

関連する問題